Ticket #39658: patch.diff

File patch.diff, 4.4 KB (added by arthurmesh@…, 11 years ago)

proposed fix

  • apple-keychain.patch

    old new  
    6868 
    6969 .c.o:
    7070        $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
    71 @@ -145,8 +145,8 @@
     71@@ -138,8 +142,8 @@ libssh.a: $(LIBSSH_OBJS)
    7272        $(AR) rv $@ $(LIBSSH_OBJS)
    7373        $(RANLIB) $@
    7474 
    7575-ssh$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHOBJS)
    76 -       $(LD) -o $@ $(SSHOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHLIBS) $(LIBS) $(GSSLIBS)
     76-       $(LD) -o $@ $(SSHOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHLIBS) $(LIBS)
    7777+ssh$(EXEEXT): $(LIBCOMPAT) libssh.a $(SSHOBJS) $(KEYCHAINOBJS)
    78 +       $(LD) -o $@ $(SSHOBJS) $(KEYCHAINOBJS) $(LDFLAGS) $(KEYCHAIN_LDFLAGS) -lssh -lopenbsd-compat $(SSHLIBS) $(LIBS) $(GSSLIBS)
     78+       $(LD) -o $@ $(SSHOBJS) $(KEYCHAINOBJS) $(LDFLAGS) $(KEYCHAIN_LDFLAGS) -lssh -lopenbsd-compat $(SSHLIBS) $(LIBS)
    7979 
    8080 sshd$(EXEEXT): libssh.a        $(LIBCOMPAT) $(SSHDOBJS)
    81         $(LD) -o $@ $(SSHDOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHDLIBS) $(LIBS) $(GSSLIBS) $(K5LIBS)
     81        $(LD) -o $@ $(SSHDOBJS) $(LDFLAGS) -lssh -lopenbsd-compat $(SSHDLIBS) $(LIBS)
    8282@@ -147,11 +151,11 @@ sshd$(EXEEXT): libssh.a   $(LIBCOMPAT) $(SSHDOBJS)
    8383 scp$(EXEEXT): $(LIBCOMPAT) libssh.a scp.o progressmeter.o
    8484        $(LD) -o $@ scp.o progressmeter.o bufaux.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS)
     
    16241624 
    16251625 /* argv0 */
    16261626 extern char *__progname;
    1627 @@ -97,6 +97,16 @@
     1627@@ -96,7 +97,17 @@
    16281628 }
    16291629 
    16301630 static int
     1631-delete_file(AuthenticationConnection *ac, const char *filename)
    16311632+add_from_keychain(AuthenticationConnection *ac)
    16321633+{
    16331634+       if (ssh_add_from_keychain(ac) == 0)
     
    16381639+}
    16391640+
    16401641+static int
    1641  delete_file(AuthenticationConnection *ac, const char *filename, int key_only)
     1642+delete_file(AuthenticationConnection *ac, int keychain, const char *filename)
    16421643 {
    1643         Key *public = NULL, *cert = NULL;
     1644        Key *public;
     1645        char *comment = NULL;
    16441646@@ -139,7 +150,7 @@
    16451647 }
    16461648 
     
    16811683                        clear_pass();
    16821684                        snprintf(msg, sizeof msg,
    16831685                            "Bad passphrase, try again for %.200s: ", comment);
    1684 @@ -385,13 +395,13 @@
     1686@@ -351,13 +370,13 @@
    16851687 }
    16861688 
    16871689 static int
     
    16891691+do_file(AuthenticationConnection *ac, int deleting, int keychain, int key_only, char *file)
    16901692 {
    16911693        if (deleting) {
    1692 -               if (delete_file(ac, file, key_only) == -1)
    1693 +               if (delete_file(ac, keychain, key_only) == -1)
     1694-               if (delete_file(ac, file) == -1)
     1695+         if (delete_file(ac, keychain, file) == -1)
    16941696                        return -1;
    16951697        } else {
    16961698-               if (add_file(ac, file, key_only) == -1)
    1697 +               if (add_file(ac, keychain, file, key_only) == -1)
     1699+         if (add_file(ac, keychain, file, key_only) == -1)
    16981700                        return -1;
    16991701        }
    17001702        return 0;
  • openssh-5.9p1-gsskex-all-20110920.patch

    old new  
    163163index 3be3aa6..e479a44 100644
    164164--- a/Makefile.in
    165165+++ b/Makefile.in
    166 @@ -72,6 +72,7 @@
     166@@ -70,6 +70,7 @@ LIBSSH_OBJS=acss.o authfd.o authfile.o bufaux.o bufbn.o buffer.o \
    167167        atomicio.o key.o dispatch.o kex.o mac.o uidswap.o uuencode.o misc.o \
    168168        monitor_fdpass.o rijndael.o ssh-dss.o ssh-ecdsa.o ssh-rsa.o dh.o \
    169169        kexdh.o kexgex.o kexdhc.o kexgexc.o bufec.o kexecdh.o kexecdhc.o \
    170170+       kexgssc.o \
    171         msg.o progressmeter.o dns.o entropy.o gss-genr.o umac.o umac128.o \
    172         jpake.o schnorr.o ssh-pkcs11.o krl.o
     171        msg.o progressmeter.o dns.o entropy.o gss-genr.o umac.o jpake.o \
     172        schnorr.o ssh-pkcs11.o
    173173 
    174174@@ -86,7 +87,7 @@ SSHDOBJS=sshd.o auth-rhosts.o auth-passwd.o auth-rsa.o auth-rh-rsa.o \
    175175        auth2-none.o auth2-passwd.o auth2-pubkey.o auth2-jpake.o \
     
    21372137index 5e7d552..db0443f 100644
    21382138--- a/monitor.h
    21392139+++ b/monitor.h
    2140 @@ -69,6 +69,8 @@
    2141         MONITOR_REQ_PAM_RESPOND = 108, MONITOR_ANS_PAM_RESPOND = 109,
    2142         MONITOR_REQ_PAM_FREE_CTX = 110, MONITOR_ANS_PAM_FREE_CTX = 111,
    2143         MONITOR_REQ_AUDIT_EVENT = 112, MONITOR_REQ_AUDIT_COMMAND = 113,
    2144 +       MONITOR_REQ_GSSSIGN = 114, MONITOR_ANS_GSSSIGN = 115,
    2145 +       MONITOR_REQ_GSSUPCREDS = 116, MONITOR_ANS_GSSUPCREDS = 117,
    2146  
    2147  };
    2148  
     2140@@ -53,6 +53,8 @@ enum monitor_reqtype {
     2141        MONITOR_REQ_GSSSTEP, MONITOR_ANS_GSSSTEP,
     2142        MONITOR_REQ_GSSUSEROK, MONITOR_ANS_GSSUSEROK,
     2143        MONITOR_REQ_GSSCHECKMIC, MONITOR_ANS_GSSCHECKMIC,
     2144+       MONITOR_REQ_GSSSIGN, MONITOR_ANS_GSSSIGN,
     2145+       MONITOR_REQ_GSSUPCREDS, MONITOR_ANS_GSSUPCREDS,
     2146        MONITOR_REQ_PAM_START,
     2147        MONITOR_REQ_PAM_ACCOUNT, MONITOR_ANS_PAM_ACCOUNT,
     2148        MONITOR_REQ_PAM_INIT_CTX, MONITOR_ANS_PAM_INIT_CTX,
    21492149diff --git a/monitor_wrap.c b/monitor_wrap.c
    21502150index 1f60658..fc6bbcd 100644
    21512151--- a/monitor_wrap.c