- OpenBSD CVS updates:
  - markus@cvs.openbsd.org
    [session.c]
    make x11-fwd work w/ localhost (xauth add host/unix:11)
    [cipher.c compat.c readconf.c servconf.c]
    check strtok() != NULL; ok niels@
    [key.c]
    fix key_read() for uuencoded keys w/o '='
    [serverloop.c]
    group ssh1 vs. ssh2 in serverloop
    [kex.c kex.h myproposal.h sshconnect2.c sshd.c]
    split kexinit/kexdh, factor out common code
    [readconf.c ssh.1 ssh.c]
    forwardagent defaults to no, add ssh -A
  - theo@cvs.openbsd.org
    [session.c]
    just some line shortening
diff --git a/cipher.c b/cipher.c
index 639c1ab..4117cb7 100644
--- a/cipher.c
+++ b/cipher.c
@@ -12,7 +12,7 @@
  */
 
 #include "includes.h"
-RCSID("$Id: cipher.c,v 1.20 2000/04/16 02:31:50 damien Exp $");
+RCSID("$Id: cipher.c,v 1.21 2000/05/30 03:44:52 damien Exp $");
 
 #include "ssh.h"
 #include "cipher.h"
@@ -178,7 +178,7 @@
 	char *p;
 	int i;
 
-	if (strcmp(names, "") == 0)
+	if (names == NULL || strcmp(names, "") == 0)
 		return 0;
 	ciphers = xstrdup(names);
 	for ((p = strtok(ciphers, CIPHER_SEP)); p; (p = strtok(NULL, CIPHER_SEP))) {
@@ -201,6 +201,8 @@
 cipher_number(const char *name)
 {
 	int i;
+	if (name == NULL)
+		return -1;
 	for (i = 0; i < sizeof(cipher_names) / sizeof(cipher_names[0]); i++)
 		if (strcmp(cipher_names[i], name) == 0 &&
 		    (cipher_mask() & (1 << i)))