X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=dotlock.c;h=68705539e5287ec1aa92d497da9a70a34e797769;hp=c076a4b654067a62d65e1d21f8b58d1286c9c2aa;hb=238b70e39b78f585c586bd51aef41988b3cc73d1;hpb=c3e57678c8be193fc137854020f3a90887be97c9 diff --git a/dotlock.c b/dotlock.c index c076a4b..6870553 100644 --- a/dotlock.c +++ b/dotlock.c @@ -55,8 +55,6 @@ # define LONG_STRING 1024 # define MAXLOCKATTEMPT 5 -# define strfcpy(A,B,C) strncpy (A,B,C), *(A+(C)-1)=0 - # ifdef USE_SETGID # ifdef HAVE_SETEGID @@ -85,6 +83,8 @@ extern int snprintf (char *, size_t, const char *, ...); #endif /* DL_STANDALONE */ +#include + static int DotlockFlags; static int Retry = MAXLOCKATTEMPT; @@ -449,10 +449,10 @@ static int dotlock_prepare (char *bn, size_t l, const char *f, int _fd) dirname = "."; } - if (strlen (basename) + 1 > l) + if (m_strlen(basename) + 1 > l) return -1; - strfcpy (bn, basename, l); + m_strcpy(bn, l, basename); if (chdir (dirname) == -1) return -1; @@ -495,19 +495,19 @@ dotlock_expand_link (char *newpath, const char *path, const char *link) /* link is full path */ if (*link == '/') { - strfcpy (newpath, link, _POSIX_PATH_MAX); + m_strcpy(newpath, _POSIX_PATH_MAX, link); return; } if ((lb = strrchr (path, '/')) == NULL) { /* no path in link */ - strfcpy (newpath, link, _POSIX_PATH_MAX); + m_strcpy(newpath, _POSIX_PATH_MAX, link); return; } len = lb - path + 1; memcpy (newpath, path, len); - strfcpy (newpath + len, link, _POSIX_PATH_MAX - len); + m_strcpy(newpath + len, _POSIX_PATH_MAX - len, link); } @@ -543,14 +543,14 @@ static int dotlock_deference_symlink (char *d, size_t l, const char *path) linkfile[len] = '\0'; dotlock_expand_link (linkpath, pathptr, linkfile); - strfcpy (realpath, linkpath, sizeof (realpath)); + m_strcpy(realpath, sizeof(realpath), linkpath); pathptr = realpath; } else break; } - strfcpy (d, pathptr, l); + m_strcpy(d, l, pathptr); return 0; }