The Samba-Bugzilla – Attachment 2071 Details for
Bug 3971
Some unprotected strncpy() calls
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Change strncat(x,y,z-1) to strlcat(x,y,z)
strncat.diff (text/plain), 5.32 KB, created by
David S. Collier-Brown
on 2006-07-27 15:42:05 UTC
(
hide
)
Description:
Change strncat(x,y,z-1) to strlcat(x,y,z)
Filename:
MIME Type:
Creator:
David S. Collier-Brown
Created:
2006-07-27 15:42:05 UTC
Size:
5.32 KB
patch
obsolete
> >------- client.c ------- >No differences encountered > >------- clitar.c ------- >No differences encountered > >------- mount.cifs.c ------- >--- /tmp/sccs.lbaGdE Thu Jul 27 16:40:48 2006 >+++ mount.cifs.c Thu Jul 27 16:39:45 2006 >@@ -1150,7 +1150,7 @@ > > > options[0] = 0; >- strncat(options,"unc=",4); >+ strlcat(options,"unc=",5); > strcat(options,share_name); > /* scan backwards and reverse direction of slash */ > temp = strrchr(options, '/'); >@@ -1157,7 +1157,7 @@ > if(temp > options + 6) > *temp = '\\'; > if(ipaddr) { >- strncat(options,",ip=",4); >+ strlcat(options,",ip=",5); > strcat(options,ipaddr); > } > >@@ -1165,13 +1165,13 @@ > /* check for syntax like user=domain\user */ > if(got_domain == 0) > domain_name = check_for_domain(&user_name); >- strncat(options,",user=",6); >+ strlcat(options,",user=",7); > strcat(options,user_name); > } > if(retry == 0) { > if(domain_name) { > /* extra length accounted for in option string above */ >- strncat(options,",domain=",8); >+ strlcat(options,",domain=",9); > strcat(options,domain_name); > } > } >@@ -1181,11 +1181,11 @@ > /* if(sep is not set)*/ > if(retry == 0) > check_for_comma(&mountpassword); >- strncat(options,",pass=",6); >+ strlcat(options,",pass=",7); > strcat(options,mountpassword); > } > >- strncat(options,",ver=",5); >+ strlcat(options,",ver=",6); > strcat(options,MOUNT_CIFS_VERSION_MAJOR); > > if(orgoptions) { > >------- smbctool.c ------- >No differences encountered > >------- smbmount.c ------- >No differences encountered > >------- smbspool.c ------- >No differences encountered > >------- smbumount.c ------- >No differences encountered > >------- tree.c ------- >--- /tmp/sccs.JhaOgE Thu Jul 27 16:40:49 2006 >+++ tree.c Thu Jul 27 16:39:46 2006 >@@ -116,8 +116,8 @@ > > for (j = i - 1; j >= 0; j--) { > >- strncat(path_string, "/", sizeof(path_string) - strlen(path_string)); >- strncat(path_string, comps[j], sizeof(path_string) - strlen(path_string)); >+ strlcat(path_string, "/", sizeof(path_string) - strlen(path_string)); >+ strlcat(path_string, comps[j], sizeof(path_string) - strlen(path_string)); > > } > >@@ -243,8 +243,8 @@ > (strcmp(dirp->name, "..") != 0)) { > > strlcpy(path1, path, sizeof(path1)); >- strcat(path1, "/", sizeof(path) - strlen(path)); >- strncat(path1, dirp->name, sizeof(path) - strlen(path)); >+ strlat(path1, "/", sizeof(path) - strlen(path)); >+ strlcat(path1, dirp->name, sizeof(path) - strlen(path)); > > if (smbc_stat(path1, &st1) < 0) { > > >------- dictionary.c ------- >No differences encountered > >------- iniparser.c ------- >No differences encountered > >------- debug.c ------- >No differences encountered > >------- interfaces.c ------- >No differences encountered > >------- ldap_escape.c ------- >No differences encountered > >------- substitute.c ------- >No differences encountered > >------- kerberos.c ------- >No differences encountered > >------- krb5_setpw.c ------- >No differences encountered > >------- libmsrpc.c ------- >No differences encountered > >------- clidgram.c ------- >No differences encountered > >------- clilist.c ------- >No differences encountered > >------- libsmbclient.c ------- >No differences encountered > >------- vfs_afsacl.c ------- >No differences encountered > >------- vfs_prealloc.c ------- >No differences encountered > >------- pam_winbind.c ------- >No differences encountered > >------- wb_common.c ------- >--- /tmp/sccs.uBaOqE Thu Jul 27 16:40:50 2006 >+++ wb_common.c Thu Jul 27 16:39:46 2006 >@@ -189,13 +189,11 @@ > > /* Connect to socket */ > >- strlcpy(path, dir, sizeof(path) - 1); >+ strlcpy(path, dir, sizeof(path)); > >- strncat(path, "/", sizeof(path) - 1 - strlen(path)); >- path[sizeof(path) - 1] = '\0'; >+ strlcat(path, "/", sizeof(path) - strlen(path)); > >- strncat(path, WINBINDD_SOCKET_NAME, sizeof(path) - 1 - strlen(path)); >- path[sizeof(path) - 1] = '\0'; >+ strlcat(path, WINBINDD_SOCKET_NAME, sizeof(path) - strlen(path)); > > ZERO_STRUCT(sunaddr); > sunaddr.sun_family = AF_UNIX; > >------- winbind_nss_aix.c ------- >No differences encountered > >------- winbind_nss_linux.c ------- >No differences encountered > >------- winbind_nss_solaris.c ------- >No differences encountered > >------- pam_smb_passwd.c ------- >No differences encountered > >------- support.c ------- >No differences encountered > >------- pdb_smbpasswd.c ------- >No differences encountered > >------- secrets.c ------- >No differences encountered > >------- findme.c ------- >No differences encountered > >------- popt.c ------- >No differences encountered > >------- popthelp.c ------- >No differences encountered > >------- lpq_parse.c ------- >No differences encountered > >------- print_cups.c ------- >No differences encountered > >------- print_iprint.c ------- >No differences encountered > >------- reg_cachehook.c ------- >No differences encountered > >------- parse_prs.c ------- >No differences encountered > >------- srv_eventlog_lib.c ------- >No differences encountered > >------- srv_spoolss_nt.c ------- >No differences encountered > >------- lanman.c ------- >No differences encountered > >------- mangle_hash2.c ------- >No differences encountered > >------- tdbtest.c ------- >No differences encountered > >------- crypttest.c ------- >No differences encountered > >------- os2_delete.c ------- >No differences encountered > >------- unixsock.c ------- >No differences encountered > >------- sharesec.c ------- >No differences encountered > >------- smbget.c ------- >No differences encountered > >------- swat.c ------- >No differences encountered
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 3971
:
2070
| 2071 |
2072