[MacPorts] #67539: openssh @9.3p1_1 Nearly all client programs crash with Segmentation Fault.

MacPorts noreply at macports.org
Thu Jun 1 10:39:53 UTC 2023


#67539: openssh @9.3p1_1 Nearly all client programs crash with Segmentation Fault.
------------------------+----------------------
  Reporter:  snowflake  |      Owner:  artkiver
      Type:  defect     |     Status:  assigned
  Priority:  Normal     |  Milestone:
 Component:  ports      |    Version:  2.8.99
Resolution:             |   Keywords:
      Port:  openssh    |
------------------------+----------------------

Comment (by neverpanic):

 So essentially pw->pw_name (or the allocated buffer, but as I understand
 xmalloc, that would have caused exit(1) to be called) is NULL in
 https://github.com/openssh/openssh-portable/blob/V_9_3/misc.c#L457-L462
 when called from https://github.com/openssh/openssh-
 portable/blob/V_9_3/ssh.c#L671-L678, which means that getpwuid() would
 have returned a struct with a NULL member, but only when compiled with
 Apple clang.

 That seems unlikely. I also can't reproduce it with a minimal example:

 {{{
 :) cllang at cllang-mac:~$ cat test.c
 #include <pwd.h>
 #include <stdio.h>
 #include <sys/types.h>
 #include <unistd.h>
 #include <uuid/uuid.h>

 int main(int argc, char *argv[]) {
         struct passwd *pw = getpwuid(getuid());
         fprintf(stderr, "pw->pw_name = %s\n", pw->pw_name);
 }
 :) cllang at cllang-mac:~$ clang -std=c99 -Wall -Werror -pedantic -o test
 test.c
 :) cllang at cllang-mac:~$ ./test
 pw->pw_name = cllang
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/67539#comment:19>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list