x509 test patch - can't compile

Ed Phillips ed at UDel.Edu
Fri Feb 15 01:35:53 EST 2002


It's line 741 of key.c in 3.0.2p1 with the x509 patch (that Markus posted
a couple weeks ago) applied.  The call to buffer_append_space has the
wrong number of args:

        case KEY_RSA:
                if (key->x509) {
                        /* XXX ssh.com does not accept a key name here */
                        len = i2d_X509(key->x509, NULL);
-->                     buf = buffer_append_space(&b, len);
                        i2d_X509(key->x509, &buf);
                } else {
                        buffer_put_cstring(&b, key_ssh_name(key));
                        buffer_put_bignum2(&b, key->rsa->e);
                        buffer_put_bignum2(&b, key->rsa->n);
                }


What's the correct way to fix this?  It seems to be a departure from the
"cram stuff into b" mentality that the surrounding code is doing...

By the way, Markus, does this patch include code to make the OpenSSH
client verify the server's host key with x509, or does this just patch
just make the server tack on the x509 stuff so that SSH.COM's client could
use it?

Thanks,

	Ed

On Thu, 14 Feb 2002, Damien Miller wrote:

> Date: Thu, 14 Feb 2002 20:26:20 +1100 (EST)
> From: Damien Miller <djm at mindrot.org>
> To: Ed Phillips <ed at UDel.Edu>
> Cc: OpenSSH Development <openssh-unix-dev at mindrot.org>
> Subject: Re: x509 test patch - can't compile
>
> On Wed, 13 Feb 2002, Ed Phillips wrote:
>
> > cc -g -I. -I. -I/opt/openssl-0.9.6c/include -I.  -I/usr/local/include
> > -DETCDIR=\"/opt/openssh-3.0.2p1-x509/etc\"
> > -D_PATH_SSH_PROGRAM=\"/opt/openssh-3.0.2p1-x509/bin/ssh\"
> > -D_PATH_SSH_ASKPASS_DEFAULT=\"/opt/openssh-3.0.2p1-x509/libexec/ssh-askpass\"
> > -D_PATH_SFTP_SERVER=\"/opt/openssh-3.0.2p1-x509/libexec/sftp-server\"
> > -D_PATH_SSH_PIDDIR=\"/var/run\" -DHAVE_CONFIG_H -c key.c
> > "key.c", line 197: warning: argument #3 is incompatible with prototype:
> >         prototype: pointer to uint : "./key.h", line 75
> >         argument : pointer to int
> > "key.c", line 499: warning: argument #3 is incompatible with prototype:
> >         prototype: pointer to uint : "./key.h", line 75
> >         argument : pointer to int
> > "key.c", line 501: warning: argument #3 is incompatible with prototype:
> >         prototype: pointer to char : "./uuencode.h", line 29
> >         argument : pointer to uchar
> > "key.c", line 679: warning: argument #2 is incompatible with prototype:
> >         prototype: pointer to const char : "./buffer.h", line 33
> >         argument : pointer to uchar
> > "key.c", line 741: warning: improper pointer/integer combination: arg #2
> > "key.c", line 741: prototype mismatch: 2 args passed, 3 expected
> > "key.c", line 741: operand cannot have void type: op "="
> > "key.c", line 741: assignment type mismatch:
> >         pointer to uchar "=" void
>
> What is line 741?
>
> -d
>
> _______________________________________________
> openssh-unix-dev at mindrot.org mailing list
> http://www.mindrot.org/mailman/listinfo/openssh-unix-dev
>

Ed Phillips <ed at udel.edu> University of Delaware (302) 831-6082
Systems Programmer III, Network and Systems Services
finger -l ed at polycut.nss.udel.edu for PGP public key




More information about the openssh-unix-dev mailing list