X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=dotlock.c;h=8fdc11724409cb3865d7dace99651554b1464107;hp=eb4ba30e1db13d3baf8e1ed4504fb87490f91ff8;hb=cac1491258e026b8c8459b2ad408a6bf2e8a03bc;hpb=df70e07e24add1869bcc9b7af2277d9d0c09a281 diff --git a/dotlock.c b/dotlock.c index eb4ba30..8fdc117 100644 --- a/dotlock.c +++ b/dotlock.c @@ -1,20 +1,11 @@ /* + * Copyright notice from original mutt: * Copyright (C) 1996-2000 Michael R. Elkins * Copyright (C) 1998-2000 Thomas Roessler - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * + * This file is part of mutt-ng, see http://www.muttng.org/. + * It's licensed under the GNU General Public License, + * please see the file GPL in the top level source directory. */ /* @@ -53,10 +44,6 @@ #include #endif -#ifdef DL_STANDALONE -# include "reldate.h" -#endif - #define MAXLINKS 1024 /* maximum link depth */ #ifdef DL_STANDALONE @@ -64,8 +51,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 @@ -94,6 +79,8 @@ extern int snprintf (char *, size_t, const char *, ...); #endif /* DL_STANDALONE */ +#include + static int DotlockFlags; static int Retry = MAXLOCKATTEMPT; @@ -347,7 +334,7 @@ static void END_PRIVILEGED (void) static void usage (const char *av0) { - fprintf (stderr, "dotlock [Mutt-ng %s (%s)]\n", VERSION, ReleaseDate); + fprintf (stderr, "dotlock [Mutt-ng %s]\n", VERSION); fprintf (stderr, "usage: %s [-t|-f|-u|-d] [-p] [-r ] file\n", av0); fputs ("\noptions:" @@ -458,10 +445,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; @@ -504,19 +491,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); } @@ -552,14 +539,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; }