X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/2e85c969d67eb14a07314802d4ac5dd63eef660b..533c7491240f2fd71d026e91f0a940f4729992fd:/import.c?ds=sidebyside diff --git a/import.c b/import.c index cf91a4dc..6c936ffc 100644 --- a/import.c +++ b/import.c @@ -12,18 +12,6 @@ #include "ssh.h" #include "misc.h" -#define PUT_32BIT(cp, value) do { \ - (cp)[3] = (unsigned char)(value); \ - (cp)[2] = (unsigned char)((value) >> 8); \ - (cp)[1] = (unsigned char)((value) >> 16); \ - (cp)[0] = (unsigned char)((value) >> 24); } while (0) - -#define GET_32BIT(cp) \ - (((unsigned long)(unsigned char)(cp)[0] << 24) | \ - ((unsigned long)(unsigned char)(cp)[1] << 16) | \ - ((unsigned long)(unsigned char)(cp)[2] << 8) | \ - ((unsigned long)(unsigned char)(cp)[3])) - int openssh_encrypted(const Filename *filename); struct ssh2_userkey *openssh_read(const Filename *filename, char *passphrase, const char **errmsg_p); @@ -456,7 +444,7 @@ static struct openssh_key *load_openssh_key(const Filename *filename, memset(ret->keyblob, 0, ret->keyblob_size); sfree(ret->keyblob); } - memset(&ret, 0, sizeof(ret)); + memset(ret, 0, sizeof(*ret)); sfree(ret); } if (errmsg_p) *errmsg_p = errmsg; @@ -473,7 +461,7 @@ int openssh_encrypted(const Filename *filename) ret = key->encrypted; memset(key->keyblob, 0, key->keyblob_size); sfree(key->keyblob); - memset(&key, 0, sizeof(key)); + memset(key, 0, sizeof(*key)); sfree(key); return ret; } @@ -666,7 +654,7 @@ struct ssh2_userkey *openssh_read(const Filename *filename, char *passphrase, } memset(key->keyblob, 0, key->keyblob_size); sfree(key->keyblob); - memset(&key, 0, sizeof(key)); + memset(key, 0, sizeof(*key)); sfree(key); if (errmsg_p) *errmsg_p = errmsg; return retval; @@ -778,6 +766,7 @@ int openssh_write(const Filename *filename, struct ssh2_userkey *key, footer = "-----END DSA PRIVATE KEY-----\n"; } else { assert(0); /* zoinks! */ + exit(1); /* XXX: GCC doesn't understand assert() on some systems. */ } /* @@ -1110,7 +1099,7 @@ static struct sshcom_key *load_sshcom_key(const Filename *filename, memset(ret->keyblob, 0, ret->keyblob_size); sfree(ret->keyblob); } - memset(&ret, 0, sizeof(ret)); + memset(ret, 0, sizeof(*ret)); sfree(ret); } if (errmsg_p) *errmsg_p = errmsg; @@ -1152,7 +1141,7 @@ int sshcom_encrypted(const Filename *filename, char **comment) *comment = dupstr(key->comment); memset(key->keyblob, 0, key->keyblob_size); sfree(key->keyblob); - memset(&key, 0, sizeof(key)); + memset(key, 0, sizeof(*key)); sfree(key); return answer; } @@ -1427,7 +1416,7 @@ struct ssh2_userkey *sshcom_read(const Filename *filename, char *passphrase, } memset(key->keyblob, 0, key->keyblob_size); sfree(key->keyblob); - memset(&key, 0, sizeof(key)); + memset(key, 0, sizeof(*key)); sfree(key); if (errmsg_p) *errmsg_p = errmsg; return ret; @@ -1509,6 +1498,7 @@ int sshcom_write(const Filename *filename, struct ssh2_userkey *key, type = "dl-modp{sign{dsa-nist-sha1},dh{plain}}"; } else { assert(0); /* zoinks! */ + exit(1); /* XXX: GCC doesn't understand assert() on some systems. */ } /*