- (djm) [ssh.c] Use separate var for address length
diff --git a/ChangeLog b/ChangeLog
index 4de7f33..75afd59 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -34,6 +34,7 @@
      [sshd.c]
      set_nonblock() instead of fnctl(...,O_NONBLOCK); "looks sane" deraadt@
  - (djm) Fix Makefile.in for connection sharing changes
+ - (djm) [ssh.c] Use separate var for address length
 
 20040603
  - (dtucker) [auth-pam.c] Don't use pam_* namespace for sshd's PAM functions.
@@ -1218,4 +1219,4 @@
    - (djm) Trim deprecated options from INSTALL. Mention UsePAM
    - (djm) Fix quote handling in sftp; Patch from admorten AT umich.edu
 
-$Id: ChangeLog,v 1.3384 2004/06/15 00:44:40 djm Exp $
+$Id: ChangeLog,v 1.3385 2004/06/15 01:14:45 djm Exp $
diff --git a/ssh.c b/ssh.c
index 1c6ec8b..4badd29 100644
--- a/ssh.c
+++ b/ssh.c
@@ -1042,13 +1042,14 @@
 {
 	struct sockaddr_un addr;
 	mode_t old_umask;
-	
+	int addr_len;
+
 	if (options.control_path == NULL || options.control_master != 1)
 		return;
 
 	memset(&addr, '\0', sizeof(addr));
 	addr.sun_family = AF_UNIX;
-	addr.sun_len = offsetof(struct sockaddr_un, sun_path) +
+	addr_len = offsetof(struct sockaddr_un, sun_path) +
 	    strlen(options.control_path) + 1;
 
 	if (strlcpy(addr.sun_path, options.control_path,
@@ -1059,7 +1060,7 @@
 		fatal("%s socket(): %s\n", __func__, strerror(errno));
 
 	old_umask = umask(0177);
-	if (bind(control_fd, (struct sockaddr*)&addr, addr.sun_len) == -1) {
+	if (bind(control_fd, (struct sockaddr*)&addr, addr_len) == -1) {
 		control_fd = -1;
 		if (errno == EINVAL)
 			fatal("ControlSocket %s already exists",
@@ -1229,13 +1230,13 @@
 control_client(const char *path)
 {
 	struct sockaddr_un addr;
-	int r, sock, exitval;
+	int r, sock, exitval, addr_len;
 	Buffer m;
 	char *cp;
 	
 	memset(&addr, '\0', sizeof(addr));
 	addr.sun_family = AF_UNIX;
-	addr.sun_len = offsetof(struct sockaddr_un, sun_path) +
+	addr_len = offsetof(struct sockaddr_un, sun_path) +
 	    strlen(path) + 1;
 
 	if (strlcpy(addr.sun_path, path,
@@ -1245,7 +1246,7 @@
 	if ((sock = socket(PF_UNIX, SOCK_STREAM, 0)) < 0)
 		fatal("%s socket(): %s", __func__, strerror(errno));
 
-	if (connect(sock, (struct sockaddr*)&addr, addr.sun_len) == -1)
+	if (connect(sock, (struct sockaddr*)&addr, addr_len) == -1)
 		fatal("Couldn't connect to %s: %s", path, strerror(errno));
 
 	if ((cp = getenv("TERM")) == NULL)