Fix possible buffer overflows (given we're copying to storage of AFP_MAX_PATH,
while AFP_MAX_PATH is much smaller than PATH_MAX)
Lubomir Rintel <lkundrak@v3.sk>
--- afpfs-ng-0.8.1/cmdline/cmdline_afp.c.overflows 2008-10-06 19:21:32.000000000 +0200
+++ afpfs-ng-0.8.1/cmdline/cmdline_afp.c 2008-10-06 19:13:50.000000000 +0200
@@ -129,9 +129,9 @@
{
if (filename[0]!='/') {
if (strlen(curdir)==1)
- snprintf(server_fullname,PATH_MAX,"/%s",filename);
+ snprintf(server_fullname,AFP_MAX_PATH,"/%s",filename);
else
- snprintf(server_fullname,PATH_MAX,"%s/%s",curdir,filename);
+ snprintf(server_fullname,AFP_MAX_PATH,"%s/%s",curdir,filename);
} else {
snprintf(server_fullname,PATH_MAX,"%s",filename);
}
@@ -1217,7 +1217,7 @@
{
struct passwd * passwd;
- snprintf(curdir,PATH_MAX,"%s",DEFAULT_DIRECTORY);
+ snprintf(curdir,AFP_MAX_PATH,"%s",DEFAULT_DIRECTORY);
if (init_uams()<0) return -1;
afp_default_url(&url);