svn commit: r243021 - head/sys/kern

Baptiste Daroussin bapt at FreeBSD.org
Wed Nov 14 10:32:13 UTC 2012


Author: bapt
Date: Wed Nov 14 10:32:12 2012
New Revision: 243021
URL: http://svnweb.freebsd.org/changeset/base/243021

Log:
  return ERANGE if the buffer is too small to contain the login as documented in
  the manpage
  
  Reviewed by:	cognet, kib
  MFC after:	1 month

Modified:
  head/sys/kern/kern_prot.c

Modified: head/sys/kern/kern_prot.c
==============================================================================
--- head/sys/kern/kern_prot.c	Wed Nov 14 10:06:50 2012	(r243020)
+++ head/sys/kern/kern_prot.c	Wed Nov 14 10:32:12 2012	(r243021)
@@ -2084,6 +2084,8 @@ sys_getlogin(struct thread *td, struct g
 	bcopy(p->p_session->s_login, login, uap->namelen);
 	SESS_UNLOCK(p->p_session);
 	PROC_UNLOCK(p);
+	if (strlen(login) + 1 > uap->namelen)
+		return (ERANGE);
 	error = copyout(login, uap->namebuf, uap->namelen);
 	return(error);
 }


More information about the svn-src-head mailing list