patches for easier mirroring, to eliminate a special copy, to make www.freebsd.org/security a full copy of security.freebsd.org and be eventually be the same. For now files are just sitting there. The symlinks are missing. Discussed on: www (repository location) Discussed with: simon (so)
		
			
				
	
	
		
			347 lines
		
	
	
	
		
			11 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			347 lines
		
	
	
	
		
			11 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| Index: crypto/openssh/auth-chall.c
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/auth-chall.c,v
 | |
| retrieving revision 1.2.2.4
 | |
| retrieving revision 1.2.2.6
 | |
| diff -p -c -r1.2.2.4 -r1.2.2.6
 | |
| *** crypto/openssh/auth-chall.c	3 Feb 2003 17:31:06 -0000	1.2.2.4
 | |
| --- crypto/openssh/auth-chall.c	24 Sep 2003 18:25:31 -0000	1.2.2.6
 | |
| *************** verify_response(Authctxt *authctxt, cons
 | |
| *** 93,101 ****
 | |
|   			xfree(info);
 | |
|   		}
 | |
|   		/* if we received more prompts, we're screwed */
 | |
| ! 		res = (numprompts != 0);
 | |
|   	}
 | |
|   	device->free_ctx(authctxt->kbdintctxt);
 | |
|   	authctxt->kbdintctxt = NULL;
 | |
|   	return res ? 0 : 1;
 | |
|   }
 | |
| --- 93,109 ----
 | |
|   			xfree(info);
 | |
|   		}
 | |
|   		/* if we received more prompts, we're screwed */
 | |
| ! 		res = (res == 0 && numprompts == 0) ? 0 : -1;
 | |
|   	}
 | |
|   	device->free_ctx(authctxt->kbdintctxt);
 | |
|   	authctxt->kbdintctxt = NULL;
 | |
|   	return res ? 0 : 1;
 | |
| + }
 | |
| + void
 | |
| + abandon_challenge_response(Authctxt *authctxt)
 | |
| + {
 | |
| + 	if (authctxt->kbdintctxt != NULL) {
 | |
| + 		device->free_ctx(authctxt->kbdintctxt);
 | |
| + 		authctxt->kbdintctxt = NULL;
 | |
| + 	}
 | |
|   }
 | |
| Index: crypto/openssh/auth.h
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/auth.h,v
 | |
| retrieving revision 1.1.1.1.2.6
 | |
| retrieving revision 1.1.1.1.2.7
 | |
| diff -p -c -r1.1.1.1.2.6 -r1.1.1.1.2.7
 | |
| *** crypto/openssh/auth.h	3 Feb 2003 17:31:06 -0000	1.1.1.1.2.6
 | |
| --- crypto/openssh/auth.h	7 Apr 2003 09:56:46 -0000	1.1.1.1.2.7
 | |
| *************** struct passwd * getpwnamallow(const char
 | |
| *** 160,165 ****
 | |
| --- 160,166 ----
 | |
|   
 | |
|   char	*get_challenge(Authctxt *);
 | |
|   int	verify_response(Authctxt *, const char *);
 | |
| + void	abandon_challenge_response(Authctxt *);
 | |
|   
 | |
|   struct passwd * auth_get_user(void);
 | |
|   
 | |
| Index: crypto/openssh/auth1.c
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/auth1.c,v
 | |
| retrieving revision 1.3.2.9
 | |
| retrieving revision 1.3.2.10
 | |
| diff -p -c -r1.3.2.9 -r1.3.2.10
 | |
| *** crypto/openssh/auth1.c	3 Feb 2003 17:31:06 -0000	1.3.2.9
 | |
| --- crypto/openssh/auth1.c	7 Apr 2003 09:56:46 -0000	1.3.2.10
 | |
| *************** do_authloop(Authctxt *authctxt)
 | |
| *** 74,80 ****
 | |
|   	char info[1024];
 | |
|   	u_int dlen;
 | |
|   	u_int ulen;
 | |
| ! 	int type = 0;
 | |
|   	struct passwd *pw = authctxt->pw;
 | |
|   
 | |
|   	debug("Attempting authentication for %s%.100s.",
 | |
| --- 74,80 ----
 | |
|   	char info[1024];
 | |
|   	u_int dlen;
 | |
|   	u_int ulen;
 | |
| ! 	int prev, type = 0;
 | |
|   	struct passwd *pw = authctxt->pw;
 | |
|   
 | |
|   	debug("Attempting authentication for %s%.100s.",
 | |
| *************** do_authloop(Authctxt *authctxt)
 | |
| *** 104,110 ****
 | |
| --- 104,122 ----
 | |
|   		info[0] = '\0';
 | |
|   
 | |
|   		/* Get a packet from the client. */
 | |
| + 		prev = type;
 | |
|   		type = packet_read();
 | |
| + 
 | |
| + 		/*
 | |
| + 		 * If we started challenge-response authentication but the
 | |
| + 		 * next packet is not a response to our challenge, release
 | |
| + 		 * the resources allocated by get_challenge() (which would
 | |
| + 		 * normally have been released by verify_response() had we
 | |
| + 		 * received such a response)
 | |
| + 		 */
 | |
| + 		if (prev == SSH_CMSG_AUTH_TIS &&
 | |
| + 		    type != SSH_CMSG_AUTH_TIS_RESPONSE)
 | |
| + 			abandon_challenge_response(authctxt);
 | |
|   
 | |
|   		/* Process the packet. */
 | |
|   		switch (type) {
 | |
| Index: crypto/openssh/auth2-pam-freebsd.c
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/auth2-pam-freebsd.c,v
 | |
| retrieving revision 1.1.2.6
 | |
| retrieving revision 1.1.2.8
 | |
| diff -p -c -r1.1.2.6 -r1.1.2.8
 | |
| *** crypto/openssh/auth2-pam-freebsd.c	7 Apr 2003 09:56:46 -0000	1.1.2.6
 | |
| --- crypto/openssh/auth2-pam-freebsd.c	24 Sep 2003 19:13:34 -0000	1.1.2.8
 | |
| *************** pam_thread_conv(int n,
 | |
| *** 134,141 ****
 | |
|   	*resp = xmalloc(n * sizeof **resp);
 | |
|   	buffer_init(&buffer);
 | |
|   	for (i = 0; i < n; ++i) {
 | |
| ! 		resp[i]->resp_retcode = 0;
 | |
| ! 		resp[i]->resp = NULL;
 | |
|   		switch (msg[i]->msg_style) {
 | |
|   		case PAM_PROMPT_ECHO_OFF:
 | |
|   			buffer_put_cstring(&buffer, msg[i]->msg);
 | |
| --- 134,141 ----
 | |
|   	*resp = xmalloc(n * sizeof **resp);
 | |
|   	buffer_init(&buffer);
 | |
|   	for (i = 0; i < n; ++i) {
 | |
| ! 		(*resp)[i].resp_retcode = 0;
 | |
| ! 		(*resp)[i].resp = NULL;
 | |
|   		switch (msg[i]->msg_style) {
 | |
|   		case PAM_PROMPT_ECHO_OFF:
 | |
|   			buffer_put_cstring(&buffer, msg[i]->msg);
 | |
| *************** pam_thread_conv(int n,
 | |
| *** 143,149 ****
 | |
|   			ssh_msg_recv(ctxt->pam_csock, &buffer);
 | |
|   			if (buffer_get_char(&buffer) != PAM_AUTHTOK)
 | |
|   				goto fail;
 | |
| ! 			resp[i]->resp = buffer_get_string(&buffer, NULL);
 | |
|   			break;
 | |
|   		case PAM_PROMPT_ECHO_ON:
 | |
|   			buffer_put_cstring(&buffer, msg[i]->msg);
 | |
| --- 143,149 ----
 | |
|   			ssh_msg_recv(ctxt->pam_csock, &buffer);
 | |
|   			if (buffer_get_char(&buffer) != PAM_AUTHTOK)
 | |
|   				goto fail;
 | |
| ! 			(*resp)[i].resp = buffer_get_string(&buffer, NULL);
 | |
|   			break;
 | |
|   		case PAM_PROMPT_ECHO_ON:
 | |
|   			buffer_put_cstring(&buffer, msg[i]->msg);
 | |
| *************** pam_thread_conv(int n,
 | |
| *** 151,157 ****
 | |
|   			ssh_msg_recv(ctxt->pam_csock, &buffer);
 | |
|   			if (buffer_get_char(&buffer) != PAM_AUTHTOK)
 | |
|   				goto fail;
 | |
| ! 			resp[i]->resp = buffer_get_string(&buffer, NULL);
 | |
|   			break;
 | |
|   		case PAM_ERROR_MSG:
 | |
|   			buffer_put_cstring(&buffer, msg[i]->msg);
 | |
| --- 151,157 ----
 | |
|   			ssh_msg_recv(ctxt->pam_csock, &buffer);
 | |
|   			if (buffer_get_char(&buffer) != PAM_AUTHTOK)
 | |
|   				goto fail;
 | |
| ! 			(*resp)[i].resp = buffer_get_string(&buffer, NULL);
 | |
|   			break;
 | |
|   		case PAM_ERROR_MSG:
 | |
|   			buffer_put_cstring(&buffer, msg[i]->msg);
 | |
| *************** pam_thread_conv(int n,
 | |
| *** 169,176 ****
 | |
|   	buffer_free(&buffer);
 | |
|   	return (PAM_SUCCESS);
 | |
|    fail:
 | |
| - 	while (i)
 | |
| - 		xfree(resp[--i]);
 | |
|   	xfree(*resp);
 | |
|   	*resp = NULL;
 | |
|   	buffer_free(&buffer);
 | |
| --- 169,174 ----
 | |
| *************** pam_chauthtok_conv(int n,
 | |
| *** 550,569 ****
 | |
|   	for (i = 0; i < n; ++i) {
 | |
|   		switch (msg[i]->msg_style) {
 | |
|   		case PAM_PROMPT_ECHO_OFF:
 | |
| ! 			resp[i]->resp =
 | |
|   			    read_passphrase(msg[i]->msg, RP_ALLOW_STDIN);
 | |
| ! 			resp[i]->resp_retcode = PAM_SUCCESS;
 | |
|   			break;
 | |
|   		case PAM_PROMPT_ECHO_ON:
 | |
|   			fputs(msg[i]->msg, stderr);
 | |
|   			fgets(input, sizeof input, stdin);
 | |
| ! 			resp[i]->resp = xstrdup(input);
 | |
| ! 			resp[i]->resp_retcode = PAM_SUCCESS;
 | |
|   			break;
 | |
|   		case PAM_ERROR_MSG:
 | |
|   		case PAM_TEXT_INFO:
 | |
|   			fputs(msg[i]->msg, stderr);
 | |
| ! 			resp[i]->resp_retcode = PAM_SUCCESS;
 | |
|   			break;
 | |
|   		default:
 | |
|   			goto fail;
 | |
| --- 548,567 ----
 | |
|   	for (i = 0; i < n; ++i) {
 | |
|   		switch (msg[i]->msg_style) {
 | |
|   		case PAM_PROMPT_ECHO_OFF:
 | |
| ! 			(*resp)[i].resp =
 | |
|   			    read_passphrase(msg[i]->msg, RP_ALLOW_STDIN);
 | |
| ! 			(*resp)[i].resp_retcode = PAM_SUCCESS;
 | |
|   			break;
 | |
|   		case PAM_PROMPT_ECHO_ON:
 | |
|   			fputs(msg[i]->msg, stderr);
 | |
|   			fgets(input, sizeof input, stdin);
 | |
| ! 			(*resp)[i].resp = xstrdup(input);
 | |
| ! 			(*resp)[i].resp_retcode = PAM_SUCCESS;
 | |
|   			break;
 | |
|   		case PAM_ERROR_MSG:
 | |
|   		case PAM_TEXT_INFO:
 | |
|   			fputs(msg[i]->msg, stderr);
 | |
| ! 			(*resp)[i].resp_retcode = PAM_SUCCESS;
 | |
|   			break;
 | |
|   		default:
 | |
|   			goto fail;
 | |
| *************** pam_chauthtok_conv(int n,
 | |
| *** 571,578 ****
 | |
|   	}
 | |
|   	return (PAM_SUCCESS);
 | |
|    fail:
 | |
| - 	while (i)
 | |
| - 		xfree(resp[--i]);
 | |
|   	xfree(*resp);
 | |
|   	*resp = NULL;
 | |
|   	return (PAM_CONV_ERR);
 | |
| --- 569,574 ----
 | |
| Index: crypto/openssh/ssh_config
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/ssh_config,v
 | |
| retrieving revision 1.2.2.8
 | |
| retrieving revision 1.2.2.9
 | |
| diff -p -c -r1.2.2.8 -r1.2.2.9
 | |
| *** crypto/openssh/ssh_config	11 Feb 2003 12:11:54 -0000	1.2.2.8
 | |
| --- crypto/openssh/ssh_config	24 Sep 2003 19:28:35 -0000	1.2.2.9
 | |
| ***************
 | |
| *** 35,38 ****
 | |
|   #   Cipher 3des
 | |
|   #   Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
 | |
|   #   EscapeChar ~
 | |
| ! #   VersionAddendum FreeBSD-20030201
 | |
| --- 35,38 ----
 | |
|   #   Cipher 3des
 | |
|   #   Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
 | |
|   #   EscapeChar ~
 | |
| ! #   VersionAddendum FreeBSD-20030924
 | |
| Index: crypto/openssh/sshd_config
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/sshd_config,v
 | |
| retrieving revision 1.4.2.12
 | |
| retrieving revision 1.4.2.13
 | |
| diff -p -c -r1.4.2.12 -r1.4.2.13
 | |
| *** crypto/openssh/sshd_config	11 Feb 2003 12:11:54 -0000	1.4.2.12
 | |
| --- crypto/openssh/sshd_config	24 Sep 2003 19:28:35 -0000	1.4.2.13
 | |
| ***************
 | |
| *** 14,20 ****
 | |
|   # Note that some of FreeBSD's defaults differ from OpenBSD's, and
 | |
|   # FreeBSD has a few additional options.
 | |
|   
 | |
| ! #VersionAddendum FreeBSD-20030201
 | |
|   
 | |
|   #Port 22
 | |
|   #Protocol 2,1
 | |
| --- 14,20 ----
 | |
|   # Note that some of FreeBSD's defaults differ from OpenBSD's, and
 | |
|   # FreeBSD has a few additional options.
 | |
|   
 | |
| ! #VersionAddendum FreeBSD-20030924
 | |
|   
 | |
|   #Port 22
 | |
|   #Protocol 2,1
 | |
| Index: crypto/openssh/version.h
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/version.h,v
 | |
| retrieving revision 1.1.1.1.2.12
 | |
| retrieving revision 1.1.1.1.2.13
 | |
| diff -p -c -r1.1.1.1.2.12 -r1.1.1.1.2.13
 | |
| *** crypto/openssh/version.h	17 Sep 2003 14:41:41 -0000	1.1.1.1.2.12
 | |
| --- crypto/openssh/version.h	24 Sep 2003 19:28:35 -0000	1.1.1.1.2.13
 | |
| ***************
 | |
| *** 5,11 ****
 | |
|   
 | |
|   #define SSH_VERSION             (ssh_version_get())
 | |
|   #define SSH_VERSION_BASE        "OpenSSH_3.5p1"
 | |
| ! #define SSH_VERSION_ADDENDUM    "FreeBSD-20030917"
 | |
|   
 | |
|   const char *ssh_version_get(void);
 | |
|   void ssh_version_set_addendum(const char *add);
 | |
| --- 5,11 ----
 | |
|   
 | |
|   #define SSH_VERSION             (ssh_version_get())
 | |
|   #define SSH_VERSION_BASE        "OpenSSH_3.5p1"
 | |
| ! #define SSH_VERSION_ADDENDUM    "FreeBSD-20030924"
 | |
|   
 | |
|   const char *ssh_version_get(void);
 | |
|   void ssh_version_set_addendum(const char *add);
 | |
| Index: crypto/openssh/sshd_config.5
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/sshd_config.5,v
 | |
| retrieving revision 1.5.2.5
 | |
| retrieving revision 1.5.2.6
 | |
| diff -p -c -r1.5.2.5 -r1.5.2.6
 | |
| *** crypto/openssh/sshd_config.5	11 Feb 2003 12:11:54 -0000	1.5.2.5
 | |
| --- crypto/openssh/sshd_config.5	24 Sep 2003 19:28:35 -0000	1.5.2.6
 | |
| *************** The default is
 | |
| *** 647,653 ****
 | |
|   Specifies a string to append to the regular version string to identify
 | |
|   OS- or site-specific modifications.
 | |
|   The default is
 | |
| ! .Dq FreeBSD-20030201 .
 | |
|   .It Cm X11DisplayOffset
 | |
|   Specifies the first display number available for
 | |
|   .Nm sshd Ns 's
 | |
| --- 647,653 ----
 | |
|   Specifies a string to append to the regular version string to identify
 | |
|   OS- or site-specific modifications.
 | |
|   The default is
 | |
| ! .Dq FreeBSD-20030924 .
 | |
|   .It Cm X11DisplayOffset
 | |
|   Specifies the first display number available for
 | |
|   .Nm sshd Ns 's
 | |
| Index: crypto/openssh/ssh_config.5
 | |
| ===================================================================
 | |
| RCS file: /home/ncvs/src/crypto/openssh/ssh_config.5,v
 | |
| retrieving revision 1.4.2.4
 | |
| retrieving revision 1.4.2.5
 | |
| diff -p -c -r1.4.2.4 -r1.4.2.5
 | |
| *** crypto/openssh/ssh_config.5	11 Feb 2003 12:11:54 -0000	1.4.2.4
 | |
| --- crypto/openssh/ssh_config.5	24 Sep 2003 19:28:35 -0000	1.4.2.5
 | |
| *************** host key database instead of
 | |
| *** 616,622 ****
 | |
|   Specifies a string to append to the regular version string to identify
 | |
|   OS- or site-specific modifications.
 | |
|   The default is
 | |
| ! .Dq FreeBSD-20030201 .
 | |
|   .It Cm XAuthLocation
 | |
|   Specifies the full pathname of the
 | |
|   .Xr xauth 1
 | |
| --- 616,622 ----
 | |
|   Specifies a string to append to the regular version string to identify
 | |
|   OS- or site-specific modifications.
 | |
|   The default is
 | |
| ! .Dq FreeBSD-20030924 .
 | |
|   .It Cm XAuthLocation
 | |
|   Specifies the full pathname of the
 | |
|   .Xr xauth 1
 |