openbsd-ports/net/netatalk/patches/patch-libatalk_adouble_ad_open_c
pvalchev 69e49a8551 Update to netatalk-2.0.3 and get rid of old directory structure.
A long due update with important features such as long filenames,
unicode, etc.
From new maintainer "Arnaud Bergeron" <abergeron@gmail.com>
2006-09-22 05:54:33 +00:00

102 lines
2.9 KiB
Plaintext

$OpenBSD: patch-libatalk_adouble_ad_open_c,v 1.1 2006/09/22 05:56:25 pvalchev Exp $
--- libatalk/adouble/ad_open.c.orig Sat Feb 12 06:22:05 2005
+++ libatalk/adouble/ad_open.c Fri Dec 30 21:36:40 2005
@@ -677,31 +677,30 @@ ad_path( path, adflags )
const char *path;
int adflags;
{
- static char pathbuf[ MAXPATHLEN + 1];
- char c, *slash, buf[MAXPATHLEN + 1];
+ static char pathbuf[MAXPATHLEN];
+ char c, *slash, buf[MAXPATHLEN];
size_t l;
- l = strlcpy(buf, path, MAXPATHLEN +1);
+ l = strlcpy(buf, path, MAXPATHLEN);
if ( adflags & ADFLAGS_DIR ) {
- strcpy( pathbuf, buf);
- if ( *buf != '\0' && l < MAXPATHLEN) {
- pathbuf[l++] = '/';
- pathbuf[l] = 0;
+ strlcpy(pathbuf, buf, sizeof(pathbuf));
+ if ( *buf != '\0' ) {
+ strlcat(pathbuf, "/", sizeof(pathbuf));
}
slash = ".Parent";
} else {
if (NULL != ( slash = strrchr( buf, '/' )) ) {
c = *++slash;
*slash = '\0';
- strcpy( pathbuf, buf);
+ strlcpy(pathbuf, buf, sizeof(pathbuf));
*slash = c;
} else {
pathbuf[ 0 ] = '\0';
slash = buf;
}
}
- strlcat( pathbuf, ".AppleDouble/", MAXPATHLEN +1);
- strlcat( pathbuf, slash, MAXPATHLEN +1);
+ strlcat( pathbuf, ".AppleDouble/", MAXPATHLEN);
+ strlcat( pathbuf, slash, MAXPATHLEN);
return( pathbuf );
}
@@ -715,27 +714,27 @@ ad_path_osx( path, adflags )
const char *path;
int adflags;
{
- static char pathbuf[ MAXPATHLEN + 1];
- char c, *slash, buf[MAXPATHLEN + 1];
+ static char pathbuf[MAXPATHLEN];
+ char c, *slash, buf[MAXPATHLEN];
if (!strcmp(path,".")) {
/* fixme */
getcwd(buf, MAXPATHLEN);
}
else {
- strlcpy(buf, path, MAXPATHLEN +1);
+ strlcpy(buf, path, MAXPATHLEN);
}
if (NULL != ( slash = strrchr( buf, '/' )) ) {
c = *++slash;
*slash = '\0';
- strlcpy( pathbuf, buf, MAXPATHLEN +1);
+ strlcpy( pathbuf, buf, MAXPATHLEN);
*slash = c;
} else {
pathbuf[ 0 ] = '\0';
slash = buf;
}
- strlcat( pathbuf, "._", MAXPATHLEN +1);
- strlcat( pathbuf, slash, MAXPATHLEN +1);
+ strlcat( pathbuf, "._", MAXPATHLEN);
+ strlcat( pathbuf, slash, MAXPATHLEN);
return pathbuf;
}
@@ -751,11 +750,11 @@ char
*ad_dir(path)
const char *path;
{
- static char modebuf[ MAXPATHLEN + 1];
+ static char modebuf[ MAXPATHLEN];
char *slash;
size_t len;
- if ( (len = strlen( path )) >= MAXPATHLEN ) {
+ if ( (len = strlen( path )) >= MAXPATHLEN - 1) {
errno = ENAMETOOLONG;
return NULL; /* can't do it */
}
@@ -765,7 +764,7 @@ char
* (path or subdirectory name) to get the name we want to stat.
* For a path which is just a filename, use "." instead.
*/
- strcpy( modebuf, path );
+ strlcpy( modebuf, path, sizeof(modebuf) );
slash = strrchr( modebuf, '/' );
/* is last char a '/' */
if (slash && slash[1] == 0) {