diff --git a/.gitignore b/.gitignore index bee2d82..0bcf5ff 100644 --- a/.gitignore +++ b/.gitignore @@ -54,3 +54,9 @@ cracklib-2.8.16.tar.gz /cracklib-2.9.6.tar.gz /cracklib-words-2.9.6.gz /missing-words.gz +/cracklib-2.9.7.tar.gz +/cracklib-words-2.9.7.gz +/cracklib2_2.9.2-1.debian.tar.xz +/cracklib2_2.9.2-1.dsc +/cracklib-2.9.11.tar.gz +/cracklib-words-2.9.11.gz diff --git a/cracklib-2.9.0-python-gzdicts.patch b/cracklib-2.9.0-python-gzdicts.patch deleted file mode 100644 index feac201..0000000 --- a/cracklib-2.9.0-python-gzdicts.patch +++ /dev/null @@ -1,104 +0,0 @@ -diff -up cracklib-2.9.0/python/_cracklib.c.gzdicts cracklib-2.9.0/python/_cracklib.c ---- cracklib-2.9.0/python/_cracklib.c.gzdicts 2013-06-01 16:47:13.000000000 +0200 -+++ cracklib-2.9.0/python/_cracklib.c 2013-08-20 12:37:32.028611493 +0200 -@@ -23,6 +23,7 @@ - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - */ - -+#include "config.h" - #ifdef PYTHON_H - #include PYTHON_H - #else -@@ -72,9 +73,8 @@ static char _cracklib_FascistCheck_doc [ - static PyObject * - _cracklib_FascistCheck(PyObject *self, PyObject *args, PyObject *kwargs) - { -- char *candidate, *dict; -- char *defaultdict = NULL; -- const char *result; -+ char *candidate; -+ const char *result, *dict; - struct stat st; - char *keywords[] = {"pw", "dictpath", NULL}; - char *dictfile; -@@ -103,44 +103,35 @@ _cracklib_FascistCheck(PyObject *self, P - "second argument was not an absolute path!"); - return NULL; - } -- dictfile = malloc(strlen(dict) + sizeof(DICT_SUFFIX)); -- if (dictfile == NULL) -- { -- PyErr_SetFromErrnoWithFilename(PyExc_OSError, dict); -- return NULL; -- } -- sprintf(dictfile, "%s" DICT_SUFFIX, dict); -- if (lstat(dictfile, &st) == -1) -- { -- PyErr_SetFromErrnoWithFilename(PyExc_OSError, dictfile); -- free(dictfile); -- return NULL; -- } -- free(dictfile); - } else - { -- defaultdict = strdup(GetDefaultCracklibDict()); -- if (errno == ENOMEM) { -- PyErr_SetFromErrno(PyExc_OSError); -- return NULL; -- } -- dictfile = malloc(strlen(defaultdict) + sizeof(DICT_SUFFIX)); -- if (dictfile == NULL) -- { -- PyErr_SetFromErrnoWithFilename(PyExc_OSError, defaultdict); -- free(defaultdict); -- return NULL; -- } -- sprintf(dictfile, "%s" DICT_SUFFIX, defaultdict); -+ /* No need to strdup() anything as this is a constant value */ -+ dict = GetDefaultCracklibDict(); -+ } -+ -+ dictfile = malloc(strlen(dict) + sizeof(DICT_SUFFIX) + 3); -+ if (dictfile == NULL) -+ { -+ PyErr_SetFromErrnoWithFilename(PyExc_OSError, dict); -+ return NULL; -+ } -+ sprintf(dictfile, "%s" DICT_SUFFIX, dict); -+ if (lstat(dictfile, &st) == -1) -+ { -+#ifdef HAVE_ZLIB_H -+ sprintf(dictfile, "%s" DICT_SUFFIX ".gz", dict); - if (lstat(dictfile, &st) == -1) - { -+ sprintf(dictfile, "%s" DICT_SUFFIX, dict); -+#endif - PyErr_SetFromErrnoWithFilename(PyExc_OSError, dictfile); -- free(defaultdict); - free(dictfile); - return NULL; -+#ifdef HAVE_ZLIB_H - } -- free(dictfile); -+#endif - } -+ free(dictfile); - - setlocale(LC_ALL, ""); - #ifdef ENABLE_NLS -@@ -148,14 +139,9 @@ _cracklib_FascistCheck(PyObject *self, P - #endif - - LOCK(); -- result = FascistCheck(candidate, dict ? dict : defaultdict); -+ result = FascistCheck(candidate, dict); - UNLOCK(); - -- if (defaultdict != NULL) -- { -- free(defaultdict); -- } -- - if (result != NULL) - { - PyErr_SetString(PyExc_ValueError, result); diff --git a/cracklib-2.9.1-inttypes.patch b/cracklib-2.9.1-inttypes.patch deleted file mode 100644 index c8d8fe8..0000000 --- a/cracklib-2.9.1-inttypes.patch +++ /dev/null @@ -1,22 +0,0 @@ -Do not depend on config.h in public header. -diff -up cracklib-2.9.1/lib/packer.h.inttypes cracklib-2.9.1/lib/packer.h ---- cracklib-2.9.1/lib/packer.h.inttypes 2013-12-03 15:00:15.000000000 +0100 -+++ cracklib-2.9.1/lib/packer.h 2013-12-09 09:07:38.306394809 +0100 -@@ -30,17 +30,7 @@ - #define _(String) (String) - #endif - --#if defined(HAVE_INTTYPES_H) --#include --#else --#if defined(HAVE_STDINT_H) - #include --#else --typedef unsigned int uint32_t; --typedef unsigned short uint16_t; --#endif --#endif -- - - struct pi_header - { diff --git a/cracklib-2.9.6-packlib-reentrant.patch b/cracklib-2.9.11-packlib-reentrant.patch similarity index 78% rename from cracklib-2.9.6-packlib-reentrant.patch rename to cracklib-2.9.11-packlib-reentrant.patch index 9ca7fa7..71f23e3 100644 --- a/cracklib-2.9.6-packlib-reentrant.patch +++ b/cracklib-2.9.11-packlib-reentrant.patch @@ -1,7 +1,7 @@ -diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c ---- cracklib-2.9.6/lib/fascist.c.reentrant 2015-08-18 20:41:16.000000000 +0200 -+++ cracklib-2.9.6/lib/fascist.c 2015-10-22 18:17:20.338290974 +0200 -@@ -36,8 +36,8 @@ typedef unsigned short uint16_t; +diff -Naur cracklib-2.9.11-orig/lib/fascist.c cracklib-2.9.11/lib/fascist.c +--- cracklib-2.9.11-orig/lib/fascist.c 2019-02-13 20:54:41.000000000 -0500 ++++ cracklib-2.9.11/lib/fascist.c 2023-07-07 18:20:42.239904964 -0400 +@@ -36,8 +36,8 @@ #undef DEBUG #undef DEBUG2 @@ -12,7 +12,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c static char *r_destructors[] = { ":", /* noop - must do this to test raw word. */ -@@ -439,6 +439,8 @@ GTry(rawtext, password) +@@ -439,6 +439,8 @@ int i; int len; char *mp; @@ -21,7 +21,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c /* use destructors to turn password into rawtext */ /* note use of Reverse() to save duplicating all rules */ -@@ -447,7 +449,7 @@ GTry(rawtext, password) +@@ -447,7 +449,7 @@ for (i = 0; r_destructors[i]; i++) { @@ -30,7 +30,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c { continue; } -@@ -462,10 +464,10 @@ GTry(rawtext, password) +@@ -462,10 +464,10 @@ } #ifdef DEBUG @@ -43,7 +43,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c { return (1); } -@@ -473,7 +475,7 @@ GTry(rawtext, password) +@@ -473,7 +475,7 @@ for (i = 0; r_constructors[i]; i++) { @@ -52,7 +52,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c { continue; } -@@ -520,7 +522,7 @@ FascistGecosUser(char *password, const c +@@ -520,7 +522,7 @@ strncpy(tbuffer, gecos, STRINGSIZE); tbuffer[STRINGSIZE-1] = '\0'; @@ -61,7 +61,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c wc = 0; ptr = gbuffer; -@@ -695,6 +697,7 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -704,6 +706,7 @@ char junk[STRINGSIZE]; char *password; char rpassword[STRINGSIZE]; @@ -69,7 +69,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c uint32_t notfound; notfound = PW_WORDS(pwp); -@@ -731,7 +734,7 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -740,7 +743,7 @@ return _("it does not contain enough DIFFERENT characters"); } @@ -78,7 +78,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c Trim(password); -@@ -787,7 +790,7 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -796,7 +799,7 @@ { char *a; @@ -87,7 +87,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c { continue; } -@@ -802,13 +805,13 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -811,13 +814,13 @@ } } @@ -103,10 +103,10 @@ diff -up cracklib-2.9.6/lib/fascist.c.reentrant cracklib-2.9.6/lib/fascist.c { continue; } -diff -up cracklib-2.9.6/lib/packer.h.reentrant cracklib-2.9.6/lib/packer.h ---- cracklib-2.9.6/lib/packer.h.reentrant 2015-10-22 18:17:20.335290902 +0200 -+++ cracklib-2.9.6/lib/packer.h 2015-10-22 18:17:20.338290974 +0200 -@@ -82,7 +82,7 @@ extern int PWClose(PWDICT *pwp); +diff -Naur cracklib-2.9.11-orig/lib/packer.h cracklib-2.9.11/lib/packer.h +--- cracklib-2.9.11-orig/lib/packer.h 2023-03-04 11:00:49.000000000 -0500 ++++ cracklib-2.9.11/lib/packer.h 2023-07-07 18:21:04.315119032 -0400 +@@ -82,7 +82,7 @@ extern unsigned int FindPW(PWDICT *pwp, char *string); extern int PutPW(PWDICT *pwp, char *string); extern int PMatch(char *control, char *string); @@ -115,10 +115,10 @@ diff -up cracklib-2.9.6/lib/packer.h.reentrant cracklib-2.9.6/lib/packer.h extern char Chop(char *string); extern char *Trim(char *string); extern char *FascistLook(PWDICT *pwp, char *instring); -diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c ---- cracklib-2.9.6/lib/packlib.c.reentrant 2015-08-18 20:41:16.000000000 +0200 -+++ cracklib-2.9.6/lib/packlib.c 2015-10-22 18:19:52.154911451 +0200 -@@ -67,8 +67,8 @@ PWOpen(prefix, mode) +diff -Naur cracklib-2.9.11-orig/lib/packlib.c cracklib-2.9.11/lib/packlib.c +--- cracklib-2.9.11-orig/lib/packlib.c 2023-03-04 11:00:49.000000000 -0500 ++++ cracklib-2.9.11/lib/packlib.c 2023-07-07 18:44:55.183214284 -0400 +@@ -65,8 +65,8 @@ char *mode; { int use64 = 0; @@ -129,7 +129,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c char iname[STRINGSIZE]; char dname[STRINGSIZE]; char wname[STRINGSIZE]; -@@ -76,13 +76,11 @@ PWOpen(prefix, mode) +@@ -74,13 +74,11 @@ void *ifp; void *wfp; @@ -146,7 +146,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c memset(&pdesc64, '\0', sizeof(pdesc64)); snprintf(iname, STRINGSIZE, "%s.pwi", prefix); -@@ -91,77 +89,80 @@ PWOpen(prefix, mode) +@@ -89,77 +87,80 @@ if (mode[0] == 'r') { @@ -195,7 +195,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c #ifdef HAVE_ZLIB_H - if (pdesc.flags & PFOR_USEZLIB) - gzclose(pdesc.dfp); -+ if(pdesc->flags & PFOR_USEZLIB) ++ if (pdesc->flags & PFOR_USEZLIB) + gzclose(pdesc->dfp); else #endif @@ -247,11 +247,11 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c fclose(ifp); #ifdef HAVE_ZLIB_H - if (pdesc.flags & PFOR_USEZLIB) -+ if(pdesc->flags & PFOR_USEZLIB) ++ if (pdesc->flags & PFOR_USEZLIB) gzclose(dfp); else #endif -@@ -170,10 +171,11 @@ PWOpen(prefix, mode) +@@ -168,10 +169,11 @@ { fclose(wfp); } @@ -264,7 +264,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c { /* uh-oh. either a broken "64-bit" file or a garbage file. */ rewind (ifp); -@@ -181,10 +183,9 @@ PWOpen(prefix, mode) +@@ -179,10 +181,9 @@ { fprintf(stderr, "%s: error reading header\n", prefix); @@ -276,15 +276,15 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c gzclose(dfp); else #endif -@@ -193,6 +194,7 @@ PWOpen(prefix, mode) +@@ -191,6 +192,7 @@ { fclose(wfp); } -+ free(pdesc); ++ free(pdesc); return NULL; } if (pdesc64.header.pih_magic != PIH_MAGIC) -@@ -200,10 +202,9 @@ PWOpen(prefix, mode) +@@ -198,10 +200,9 @@ /* nope, not "64-bit" after all */ fprintf(stderr, "%s: error reading header\n", prefix); @@ -296,11 +296,11 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c gzclose(dfp); else #endif -@@ -213,23 +214,23 @@ PWOpen(prefix, mode) +@@ -211,23 +212,23 @@ { fclose(wfp); } -+ free(pdesc); ++ free(pdesc); return NULL; } - pdesc.header.pih_magic = pdesc64.header.pih_magic; @@ -327,7 +327,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c gzclose(dfp); else #endif -@@ -239,17 +240,17 @@ PWOpen(prefix, mode) +@@ -237,17 +238,17 @@ { fclose(wfp); } @@ -348,7 +348,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c gzclose(dfp); else #endif -@@ -258,17 +259,17 @@ PWOpen(prefix, mode) +@@ -256,17 +257,17 @@ { fclose(wfp); } @@ -369,7 +369,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c gzclose(dfp); else #endif -@@ -277,10 +278,11 @@ PWOpen(prefix, mode) +@@ -275,10 +276,11 @@ { fclose(wfp); } @@ -382,7 +382,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c { int i; -@@ -288,27 +290,27 @@ PWOpen(prefix, mode) +@@ -286,27 +288,27 @@ { if (fread(pdesc64.hwms, 1, sizeof(pdesc64.hwms), wfp) != sizeof(pdesc64.hwms)) { @@ -395,9 +395,8 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c - pdesc.hwms[i] = pdesc64.hwms[i]; + pdesc->hwms[i] = pdesc64.hwms[i]; } -- } + } - else if (fread(pdesc.hwms, 1, sizeof(pdesc.hwms), wfp) != sizeof(pdesc.hwms)) -+ } + else if (fread(pdesc->hwms, 1, sizeof(pdesc->hwms), wfp) != sizeof(pdesc->hwms)) { - pdesc.flags &= ~PFOR_USEHWMS; @@ -418,15 +417,7 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c } int -@@ -318,6 +320,7 @@ PWClose(pwp) - if (pwp->header.pih_magic != PIH_MAGIC) - { - fprintf(stderr, "PWClose: close magic mismatch\n"); -+ /* we do not try to free memory that is probably corrupted */ - return (-1); - } - -@@ -329,12 +332,14 @@ PWClose(pwp) +@@ -327,12 +329,14 @@ if (fseek(pwp->ifp, 0L, 0)) { fprintf(stderr, "index magic fseek failed\n"); @@ -437,11 +428,11 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c if (!fwrite((char *) &pwp->header, sizeof(pwp->header), 1, pwp->ifp)) { fprintf(stderr, "index magic fwrite failed\n"); -+ free(pwp); ++ free(pwp); return (-1); } -@@ -368,6 +373,7 @@ PWClose(pwp) +@@ -366,6 +370,7 @@ } pwp->header.pih_magic = 0; @@ -449,143 +440,143 @@ diff -up cracklib-2.9.6/lib/packlib.c.reentrant cracklib-2.9.6/lib/packlib.c return (0); } -diff -up cracklib-2.9.6/lib/rules.c.reentrant cracklib-2.9.6/lib/rules.c ---- cracklib-2.9.6/lib/rules.c.reentrant 2015-08-18 20:41:16.000000000 +0200 -+++ cracklib-2.9.6/lib/rules.c 2015-10-22 18:17:20.339290998 +0200 -@@ -82,12 +82,12 @@ Suffix(myword, suffix) +diff -Naur cracklib-2.9.11-orig/lib/rules.c cracklib-2.9.11/lib/rules.c +--- cracklib-2.9.11-orig/lib/rules.c 2023-04-02 14:15:05.000000000 -0400 ++++ cracklib-2.9.11/lib/rules.c 2023-07-07 18:58:04.892943574 -0400 +@@ -80,12 +80,12 @@ } char * -Reverse(str) /* return a pointer to a reversal */ +Reverse(str, area) /* return a pointer to a reversal */ - register char *str; + char *str; + char *area; { - register int i; - register int j; + int i; + int j; - static char area[STRINGSIZE]; j = i = strlen(str); while (*str) { -@@ -98,11 +98,11 @@ Reverse(str) /* return a pointer to a +@@ -96,11 +96,11 @@ } char * -Uppercase(str) /* return a pointer to an uppercase */ +Uppercase(str, area) /* return a pointer to an uppercase */ - register char *str; + char *str; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*str) { -@@ -115,11 +115,11 @@ Uppercase(str) /* return a pointer to +@@ -113,11 +113,11 @@ } char * -Lowercase(str) /* return a pointer to an lowercase */ +Lowercase(str, area) /* return a pointer to an lowercase */ - register char *str; + char *str; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*str) { -@@ -132,11 +132,11 @@ Lowercase(str) /* return a pointer to +@@ -130,11 +130,11 @@ } char * -Capitalise(str) /* return a pointer to an capitalised */ +Capitalise(str, area) /* return a pointer to an capitalised */ - register char *str; + char *str; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*str) -@@ -151,11 +151,11 @@ Capitalise(str) /* return a pointer to +@@ -149,11 +149,11 @@ } char * -Pluralise(string) /* returns a pointer to a plural */ +Pluralise(string, area) /* returns a pointer to a plural */ - register char *string; + char *string; + char *area; { - register int length; + int length; - static char area[STRINGSIZE]; length = strlen(string); strcpy(area, string); -@@ -192,13 +192,13 @@ Pluralise(string) /* returns a pointer +@@ -190,13 +190,13 @@ } char * -Substitute(string, old, new) /* returns pointer to a swapped about copy */ +Substitute(string, old, new, area) /* returns pointer to a swapped about copy */ - register char *string; - register char old; - register char new; + char *string; + char old; + char new; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*string) { -@@ -210,12 +210,12 @@ Substitute(string, old, new) /* returns +@@ -208,12 +208,12 @@ } char * -Purge(string, target) /* returns pointer to a purged copy */ +Purge(string, target, area) /* returns pointer to a purged copy */ - register char *string; - register char target; + char *string; + char target; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*string) { -@@ -372,13 +372,13 @@ PolyStrchr(string, class) +@@ -370,13 +370,13 @@ } char * -PolySubst(string, class, new) /* returns pointer to a swapped about copy */ +PolySubst(string, class, new, area) /* returns pointer to a swapped about copy */ - register char *string; - register char class; - register char new; + char *string; + char class; + char new; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*string) { -@@ -390,12 +390,12 @@ PolySubst(string, class, new) /* returns +@@ -388,12 +388,12 @@ } char * -PolyPurge(string, class) /* returns pointer to a purged copy */ +PolyPurge(string, class, area) /* returns pointer to a purged copy */ - register char *string; - register char class; + char *string; + char class; + char *area; { - register char *ptr; + char *ptr; - static char area[STRINGSIZE]; ptr = area; while (*string) { -@@ -428,40 +428,41 @@ Char2Int(character) +@@ -426,39 +426,40 @@ } char * @@ -596,10 +587,9 @@ diff -up cracklib-2.9.6/lib/rules.c.reentrant cracklib-2.9.6/lib/rules.c + char *area; { int limit; - register char *ptr; -- static char area[STRINGSIZE]; - char area2[STRINGSIZE]; - area[0] = '\0'; + char *ptr; +- static char area[STRINGSIZE * 2] = {0}; + char area2[STRINGSIZE * 2] = {0}; strcpy(area, input); for (ptr = control; *ptr; ptr++) @@ -635,7 +625,7 @@ diff -up cracklib-2.9.6/lib/rules.c.reentrant cracklib-2.9.6/lib/rules.c break; case RULE_DUPLICATE: strcpy(area2, area); -@@ -548,7 +549,6 @@ Mangle(input, control) /* returns a poi +@@ -545,7 +546,6 @@ Debug(1, "Mangle: extract: weird argument in '%s'\n", control); return NULL; } @@ -643,7 +633,7 @@ diff -up cracklib-2.9.6/lib/rules.c.reentrant cracklib-2.9.6/lib/rules.c for (i = 0; length-- && area2[start + i]; i++) { area[i] = area2[start + i]; -@@ -619,10 +619,10 @@ Mangle(input, control) /* returns a poi +@@ -616,10 +616,10 @@ return NULL; } else if (ptr[1] != RULE_CLASS) { @@ -656,7 +646,7 @@ diff -up cracklib-2.9.6/lib/rules.c.reentrant cracklib-2.9.6/lib/rules.c ptr += 2; } break; -@@ -633,11 +633,11 @@ Mangle(input, control) /* returns a poi +@@ -630,11 +630,11 @@ return NULL; } else if (ptr[1] != RULE_CLASS) { diff --git a/cracklib-2.9.6-simplistic.patch b/cracklib-2.9.11-simplistic.patch similarity index 51% rename from cracklib-2.9.6-simplistic.patch rename to cracklib-2.9.11-simplistic.patch index 650b103..f1df715 100644 --- a/cracklib-2.9.6-simplistic.patch +++ b/cracklib-2.9.11-simplistic.patch @@ -1,7 +1,7 @@ -diff -up cracklib-2.9.6/lib/fascist.c.simplistic cracklib-2.9.6/lib/fascist.c ---- cracklib-2.9.6/lib/fascist.c.simplistic 2015-10-22 18:21:51.099748012 +0200 -+++ cracklib-2.9.6/lib/fascist.c 2015-10-22 18:21:51.101748060 +0200 -@@ -55,7 +55,6 @@ static char *r_destructors[] = { +diff -Naur cracklib-2.9.11-orig/lib/fascist.c cracklib-2.9.11/lib/fascist.c +--- cracklib-2.9.11-orig/lib/fascist.c 2023-07-07 21:18:25.582821076 -0400 ++++ cracklib-2.9.11/lib/fascist.c 2023-07-07 21:19:55.130234075 -0400 +@@ -55,7 +55,6 @@ "/?p@?p", /* purging out punctuation/symbols/junk */ "/?s@?s", @@ -9,33 +9,33 @@ diff -up cracklib-2.9.6/lib/fascist.c.simplistic cracklib-2.9.6/lib/fascist.c /* attempt reverse engineering of password strings */ -@@ -454,6 +453,12 @@ GTry(rawtext, password) +@@ -454,6 +453,12 @@ continue; } + if (len - strlen(mp) >= 3) + { -+ /* purged too much */ -+ continue; ++ /* purged too much */ ++ continue; + } + #ifdef DEBUG printf("%-16s = %-16s (destruct %s)\n", mp, rawtext, r_destructors[i]); #endif -@@ -480,6 +485,12 @@ GTry(rawtext, password) +@@ -480,6 +485,12 @@ continue; } + if (len - strlen(mp) >= 3) + { -+ /* purged too much */ -+ continue; ++ /* purged too much */ ++ continue; + } + #ifdef DEBUG printf("%-16s = %-16s (construct %s)\n", mp, password, r_constructors[i]); #endif -@@ -699,6 +710,7 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -708,6 +719,7 @@ char rpassword[STRINGSIZE]; char area[STRINGSIZE]; uint32_t notfound; @@ -43,7 +43,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.simplistic cracklib-2.9.6/lib/fascist.c notfound = PW_WORDS(pwp); /* already truncated if from FascistCheck() */ -@@ -748,6 +760,7 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -757,6 +769,7 @@ return _("it is all whitespace"); } @@ -51,7 +51,7 @@ diff -up cracklib-2.9.6/lib/fascist.c.simplistic cracklib-2.9.6/lib/fascist.c i = 0; ptr = password; while (ptr[0] && ptr[1]) -@@ -759,10 +772,9 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -768,10 +781,9 @@ ptr++; } @@ -60,53 +60,52 @@ diff -up cracklib-2.9.6/lib/fascist.c.simplistic cracklib-2.9.6/lib/fascist.c - maxrepeat = 3+(0.09*strlen(password)); - if (i > maxrepeat) + /* We were still generating false positives for long passwords. -+ Just count systematic double as a single character. */ ++ Just count systematic double as a single character. */ + if (len - i < MINLEN) { return _("it is too simplistic/systematic"); } -@@ -795,6 +807,12 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -804,6 +816,12 @@ continue; } + if (len - strlen(a) >= 3) + { -+ /* purged too much */ -+ continue; ++ /* purged too much */ ++ continue; + } + #ifdef DEBUG printf("%-16s (dict)\n", a); #endif -@@ -815,6 +833,13 @@ FascistLookUser(PWDICT *pwp, char *instr +@@ -824,6 +842,13 @@ { continue; } + + if (len - strlen(a) >= 3) + { -+ /* purged too much */ -+ continue; ++ /* purged too much */ ++ continue; + } + #ifdef DEBUG printf("%-16s (reversed dict)\n", a); #endif -diff -up cracklib-2.9.6/util/cracklib-format.simplistic cracklib-2.9.6/util/cracklib-format ---- cracklib-2.9.6/util/cracklib-format.simplistic 2015-10-22 18:21:51.101748060 +0200 -+++ cracklib-2.9.6/util/cracklib-format 2014-07-09 17:24:45.000000000 +0200 -@@ -3,8 +3,10 @@ - # This preprocesses a set of word lists into a suitable form for input - # into cracklib-packer +diff -Naur cracklib-2.9.11-orig/util/cracklib-format cracklib-2.9.11/util/cracklib-format +--- cracklib-2.9.11-orig/util/cracklib-format 2021-01-22 10:58:14.000000000 -0500 ++++ cracklib-2.9.11/util/cracklib-format 2023-07-07 21:19:14.854048317 -0400 +@@ -10,10 +10,12 @@ + # lines (possibly introduced by earlier parts of the pipeline) as + # cracklib-packer will generate "skipping line" warnings otherwise. # +LC_ALL=C +export LC_ALL gzip -cdf "$@" | -- grep -v '^\(#\|$\)' | -- tr '[A-Z]' '[a-z]' | -- tr -cd '\012[a-z][0-9]' | + grep -a -v '^#' | + tr '[A-Z]' '[a-z]' | + tr -cd '\012[a-z][0-9]' | + cut -c 1-1022 | + grep -v '^$' | - env LC_ALL=C sort -u -+ grep -a -E -v '^.{30,}$' | -+ tr '[:upper:]' '[:lower:]' | -+ tr -cd '\n[:graph:]' | + sort -u diff --git a/cracklib-2.9.6-cve-2016-6318.patch b/cracklib-2.9.6-cve-2016-6318.patch deleted file mode 100644 index 370b403..0000000 --- a/cracklib-2.9.6-cve-2016-6318.patch +++ /dev/null @@ -1,144 +0,0 @@ -diff -up cracklib-2.9.6/lib/fascist.c.overflow cracklib-2.9.6/lib/fascist.c ---- cracklib-2.9.6/lib/fascist.c.overflow 2015-10-23 16:58:38.403319225 +0200 -+++ cracklib-2.9.6/lib/fascist.c 2016-12-08 17:28:41.490101358 +0100 -@@ -515,7 +515,7 @@ FascistGecosUser(char *password, const c - char gbuffer[STRINGSIZE]; - char tbuffer[STRINGSIZE]; - char *uwords[STRINGSIZE]; -- char longbuffer[STRINGSIZE * 2]; -+ char longbuffer[STRINGSIZE]; - - if (gecos == NULL) - gecos = ""; -@@ -596,38 +596,47 @@ FascistGecosUser(char *password, const c - { - for (i = 0; i < j; i++) - { -- strcpy(longbuffer, uwords[i]); -- strcat(longbuffer, uwords[j]); -- -- if (GTry(longbuffer, password)) -+ if (strlen(uwords[i]) + strlen(uwords[j]) < STRINGSIZE) - { -- return _("it is derived from your password entry"); -- } -- -- strcpy(longbuffer, uwords[j]); -- strcat(longbuffer, uwords[i]); -+ strcpy(longbuffer, uwords[i]); -+ strcat(longbuffer, uwords[j]); - -- if (GTry(longbuffer, password)) -- { -- return _("it's derived from your password entry"); -+ if (GTry(longbuffer, password)) -+ { -+ return _("it is derived from your password entry"); -+ } -+ -+ strcpy(longbuffer, uwords[j]); -+ strcat(longbuffer, uwords[i]); -+ -+ if (GTry(longbuffer, password)) -+ { -+ return _("it's derived from your password entry"); -+ } - } - -- longbuffer[0] = uwords[i][0]; -- longbuffer[1] = '\0'; -- strcat(longbuffer, uwords[j]); -- -- if (GTry(longbuffer, password)) -+ if (strlen(uwords[j]) < STRINGSIZE - 1) - { -- return _("it is derivable from your password entry"); -+ longbuffer[0] = uwords[i][0]; -+ longbuffer[1] = '\0'; -+ strcat(longbuffer, uwords[j]); -+ -+ if (GTry(longbuffer, password)) -+ { -+ return _("it is derivable from your password entry"); -+ } - } - -- longbuffer[0] = uwords[j][0]; -- longbuffer[1] = '\0'; -- strcat(longbuffer, uwords[i]); -- -- if (GTry(longbuffer, password)) -+ if (strlen(uwords[i]) < STRINGSIZE - 1) - { -- return _("it's derivable from your password entry"); -+ longbuffer[0] = uwords[j][0]; -+ longbuffer[1] = '\0'; -+ strcat(longbuffer, uwords[i]); -+ -+ if (GTry(longbuffer, password)) -+ { -+ return _("it's derivable from your password entry"); -+ } - } - } - } -diff -up cracklib-2.9.6/lib/rules.c.overflow cracklib-2.9.6/lib/rules.c ---- cracklib-2.9.6/lib/rules.c.overflow 2015-10-23 16:58:38.000000000 +0200 -+++ cracklib-2.9.6/lib/rules.c 2016-12-08 18:03:27.041941297 +0100 -@@ -158,6 +158,8 @@ Pluralise(string, area) /* returns a po - register int length; - length = strlen(string); - strcpy(area, string); -+ if (length > STRINGSIZE - 3) /* we add 2 characters at worst */ -+ return (area); - - if (!Suffix(string, "ch") || - !Suffix(string, "ex") || -@@ -462,11 +464,11 @@ Mangle(input, control, area) /* returns - Pluralise(area2, area); - break; - case RULE_REFLECT: -- strcat(area, Reverse(area, area2)); -+ strncat(area, Reverse(area, area2), STRINGSIZE - strlen(area) - 1); - break; - case RULE_DUPLICATE: - strcpy(area2, area); -- strcat(area, area2); -+ strncat(area, area2, STRINGSIZE - strlen(area) - 1); - break; - case RULE_GT: - if (!ptr[1]) -@@ -514,7 +516,8 @@ Mangle(input, control, area) /* returns - } else - { - area2[0] = *(++ptr); -- strcpy(area2 + 1, area); -+ strncpy(area2 + 1, area, STRINGSIZE - 2); -+ area2[STRINGSIZE - 1] = '\0'; - strcpy(area, area2); - } - break; -@@ -528,8 +531,10 @@ Mangle(input, control, area) /* returns - register char *string; - string = area; - while (*(string++)); -- string[-1] = *(++ptr); -- *string = '\0'; -+ if (string < area + STRINGSIZE) { -+ string[-1] = *(++ptr); -+ *string = '\0'; -+ } - } - break; - case RULE_EXTRACT: -@@ -600,6 +605,10 @@ Mangle(input, control, area) /* returns - } - p1 = area; - p2 = area2; -+ if (strlen(p1) > STRINGSIZE - 2) { -+ /* truncate */ -+ p1[STRINGSIZE - 2] = '\0'; -+ } - while (i && *p1) - { - i--; diff --git a/cracklib-2.9.6-translation-updates.patch b/cracklib-2.9.6-translation-updates.patch deleted file mode 100644 index eb2497a..0000000 --- a/cracklib-2.9.6-translation-updates.patch +++ /dev/null @@ -1,2411 +0,0 @@ -diff -up cracklib-2.9.6/po/as.po.translations cracklib-2.9.6/po/as.po ---- cracklib-2.9.6/po/as.po.translations 2015-10-22 18:24:54.374118684 +0200 -+++ cracklib-2.9.6/po/as.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,82 +1,83 @@ - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Amitakhya Phukan , 2009. -+# ngoswami , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: \n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-12 11:39+0530\n" --"Last-Translator: Amitakhya Phukan \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-23 10:11-0400\n" -+"Last-Translator: ngoswami \n" - "Language-Team: Assamese <>\n" --"Language: as\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: Lokalize 1.0\n" -+"Language: as\n" - "Plural-Forms: nplurals=2; plural=n != 1;\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "আপুনি গুপ্তশব্দৰ নথিপত্ৰ পঞ্জিকৃত নহয়" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "এইটো আপোনাৰ ব্যৱহাৰকৰ্তাৰ নামৰ আধাৰত" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "এইটো আপোনাৰ গুপ্তশব্দৰ নিবেশৰ আধাৰত" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "ইয়াক আপোনাৰ গুপ্তশব্দৰ নিবেশৰ পৰা পোৱা হৈছে" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "ইয়াক আপোনাৰ গুপ্তশব্দৰ নিবেশৰ পৰা পোৱা হৈছে" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "ইয়াক আপোনাৰ গুপ্তশব্দৰ নিবেশৰ পৰা পাব পাৰি" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "ইয়াক আপোনাৰ গুপ্তশব্দৰ নিবেশৰ পৰা পাব পাৰি" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "আপুনি গুপ্তশব্দৰ নথিপত্ৰ পঞ্জিকৃত নহয়" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "ই বৰ সৰু" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "ই বৰ সৰু" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ইয়াত যথেষ্ট ভিন্ন আকৰ নাই" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "ই সম্পূৰ্ণৰূপে ৰিক্ত স্থানেৰে ভৰা" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "ই বৰ সৰল/শৃংখলাবদ্ধ" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ই দেখাত এটা National Insurance ৰ নম্বৰৰ দৰে ।" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "ই এটা অভিধানৰ শব্দৰ আধাৰত" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "ই এটা অভিধানৰ শব্দৰ আধাৰত (ওলোটা ক্ৰমত)" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "শব্দকোষ ল'ড কৰোতে ত্ৰুটি" -diff -up cracklib-2.9.6/po/bn_IN.po.translations cracklib-2.9.6/po/bn_IN.po ---- cracklib-2.9.6/po/bn_IN.po.translations 2015-10-22 18:24:54.374118684 +0200 -+++ cracklib-2.9.6/po/bn_IN.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,83 +1,84 @@ - # translation of cracklib.po to Bengali INDIA - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the cracklib package. --# -+# - # Runa Bhattacharjee , 2009. -+# sray , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default.cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-11 12:34+0530\n" --"Last-Translator: Runa Bhattacharjee \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-03 05:14-0400\n" -+"Last-Translator: sray \n" - "Language-Team: Bengali INDIA \n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: bn-IN\n" - "Plural-Forms: nplurals=2; plural=(n != 1);\n" -+"X-Generator: Zanata 3.1.2\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "পাসওয়ার্ড ফাইলের মধ্যে আপনার পরিচয় নিবন্ধিত নয়" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "আপনার ব্যবহারকারীর নামের উপর এটি নির্ভরশীল" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "আপনার পাসওয়ার্ড এনট্রির উপর এটি নির্ভরশীল" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "আপনার পাসওয়ার্ড এনট্রি থেকে এটি আহরণ করা হয়েছে" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "আপনার পাসওয়ার্ড এনট্রি থেকে এটি আহরণ করা হয়েছে" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "আপনার পাসওয়ার্ড এনট্রি থেকে এটি আহরণ করা সম্ভব" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "আপনার পাসওয়ার্ড এনট্রি থেকে এটি আহরণ করা সম্ভব" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "পাসওয়ার্ড ফাইলের মধ্যে আপনার পরিচয় নিবন্ধিত নয়" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "এটি অত্যাধিক ছোট" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "এটি অতিমাত্রায় ছোট" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "এর মধ্যে উপস্থিত অক্ষরগুলির মধ্যে পর্যাপ্ত বৈচিত্র উপস্থিত নেই" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "এটি শুধুমাত্র শূণ্যস্থান দ্বারা গঠিত হয়েছে" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "এটি অত্যাধিক সরল/গতানুগতিক" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "এটি একটি বীমার অ্যাকাউন্টের সংখ্যার অনুরূপ।" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "এটি অভিধানের একটি শব্দের ভিত্তিতে নির্ধারিত হয়েছে" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "এটি অভিধানের একটি শব্দের (বিপরীত) ভিত্তিতে নির্ধারিত হয়েছে" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "অভিধান লোড হতে সমস্যা" -diff -up cracklib-2.9.6/po/de.po.translations cracklib-2.9.6/po/de.po ---- cracklib-2.9.6/po/de.po.translations 2015-10-22 18:24:54.375118708 +0200 -+++ cracklib-2.9.6/po/de.po 2014-07-09 17:24:45.000000000 +0200 -@@ -4,82 +4,82 @@ - # Antje Faber , 2000-2003. - # Karl Eichwalder , 1999-2003. - # Martin Lohner , 2000. --# -+# rgromans , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: new\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2003-11-27 18:31GMT\n" --"Last-Translator: Novell Language \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-17 11:45-0400\n" -+"Last-Translator: rgromans \n" - "Language-Team: Novell Language \n" --"Language: \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=utf-8\n" -+"Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" -+"Language: de\n" - "Plural-Forms: nplurals=2; plural=(n != 1);\n" --"X-Generator: KBabel 1.0.2\n" -+"X-Generator: Zanata 3.1.2\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "Sie sind nicht in der passwd-Datei eingetragen." -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "Es basiert auf Ihrem Benutzernamen" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "Es basiert auf Ihrem Passwort-Eintrag" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "Es wird von Ihrem Passwort-Eintrag abgeleitet" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "Es wird von Ihrem Passwort-Eintrag abgeleitet" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "Es kann von Ihrem Passwort-Eintrag abgeleitet werden." - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "Es kann von Ihrem Passwort-Eintrag abgeleitet werden." - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "Sie sind nicht in der passwd-Datei eingetragen." -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "Es ist VIEL zu kurz" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "Es ist zu kurz" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "Es enthält nicht genug unterschiedliche Zeichen" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "Es besteht nur aus Leerzeichen" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "Es ist zu einfach/systematisch" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "Es schaut nach Versicherungsnummer aus" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "Es basiert auf einem Wörterbucheintrag" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "Es basiert auf einem (umgekehrten) Wörterbucheintrag" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "Fehler beim Laden des Wörterbuches" -diff -up cracklib-2.9.6/po/es.po.translations cracklib-2.9.6/po/es.po ---- cracklib-2.9.6/po/es.po.translations 2015-10-22 18:24:54.375118708 +0200 -+++ cracklib-2.9.6/po/es.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,81 +1,82 @@ - # translation of cracklib.po to - # This file is put in the public domain. - # , 2003 --# -+# gguerrer , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2005-06-23 13:17+02:00\n" --"Last-Translator: Novell Language \n" --"Language-Team: Novell Language \n" --"Language: \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-23 07:39-0400\n" -+"Last-Translator: gguerrer \n" -+"Language-Team: Novell Language \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=utf-8\n" -+"Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.0.1\n" -+"Language: es\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=2; plural=(n != 1)\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "No está registrado en el archivo de contraseñas." -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" --msgstr "Está basada en su nombre de usuario." -+msgstr "Se basa en su nombre de usuario." - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" --msgstr "Está basada en su contraseña." -+msgstr "Se base en la entrada de su contraseña." - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "Se deriva de su contraseña." - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "Se deriva de su contraseña." - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "Puede derivarse de su contraseña." - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "Puede derivarse de su contraseña." - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "No está registrado en el archivo de contraseñas." -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "Es DEMASIADO corta." - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "Es demasiado corta." - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "No contiene suficientes caracteres DIFERENTES." - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "Está formada sólo por espacios." - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "Es demasiado simple/sistemática." - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "Parece un número de la Seguridad Social." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "Está basada en una palabra del diccionario." - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "Está basada en una palabra del diccionario escrita al revés." - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "Error al cargar el diccionario" -diff -up cracklib-2.9.6/po/fr.po.translations cracklib-2.9.6/po/fr.po ---- cracklib-2.9.6/po/fr.po.translations 2015-10-22 18:24:54.375118708 +0200 -+++ cracklib-2.9.6/po/fr.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,81 +1,82 @@ - # translation of cracklib.po to Français - # This file is put in the public domain. - # Patricia Vaz , 2003 --# -+# Sam Friedmann , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2005-06-23 13:17+02:00\n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-08 12:03-0400\n" - "Last-Translator: Novell Language \n" - "Language-Team: Novell Language \n" --"Language: \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=utf-8\n" -+"Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.0.1\n" -+"Language: fr\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=2; plural=(n > 1)\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "vous n'êtes pas enregistré dans le fichier de mot de passe" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "basé sur votre nom d'utilisateur" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "basé sur votre mot de passe" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "dérivé de votre mot de passe" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "dérivé de votre mot de passe" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "dérivable de votre mot de passe" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "dérivable de votre mot de passe" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "vous n'êtes pas enregistré dans le fichier de mot de passe" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "BEAUCOUP trop court" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "trop court" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ne contient pas suffisamment de caractères DIFFÉRENTS" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "il n'y a que des espaces" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "trop simple/systématique" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ressemble à un numéro de sécurité sociale" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "basé sur un mot du dictionnaire" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "basé sur un mot du dictionnaire à l'envers" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "erreur lors du chargement du dictionnaire" -diff -up cracklib-2.9.6/po/gu.po.translations cracklib-2.9.6/po/gu.po ---- cracklib-2.9.6/po/gu.po.translations 2015-10-22 18:24:54.375118708 +0200 -+++ cracklib-2.9.6/po/gu.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,84 +1,85 @@ - # translation of cracklib.default.cracklib.gu.po to Gujarati - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Ankit Patel , 2009. -+# swkothar , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default.cracklib.gu\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-10-22 18:13+0530\n" --"Last-Translator: Ankit Patel \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-24 05:01-0400\n" -+"Last-Translator: swkothar \n" - "Language-Team: Gujarati \n" --"Language: gu\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" --"Plural-Forms: nplurals=2; plural=(n!=1);\n" -+"Language: gu\n" -+"Plural-Forms: nplurals=2; plural=(n!=1);\n" - "\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "પાસવર્ડ ફાઈલમાં તમારી નોંધ થયેલ નથી" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "તમારા વપરાશકર્તા નામ પર આધારિત છે" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "તમારા પાસવર્ડ પ્રવેશ પર આધારિત છે" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "તમારા પાસવર્ડ પ્રવેશમાંથી તારવવામાં આવેલ છે" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "તમારા પાસવર્ડ પ્રવેશમાંથી તારવવામાં આવેલ છે" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "તમારા પાસવર્ડ પ્રવેશમાંથી તારવી શકાય તેવું છે" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "તમારા પાસવર્ડ પ્રવેશમાંથી તારવી શકાય તેવું છે" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "પાસવર્ડ ફાઈલમાં તમારી નોંધ થયેલ નથી" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "ખૂબ ટૂંકો છે" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "ખૂબ ટૂંકો છે" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ભિન્ન અક્ષરો સમાવતો નથી" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "આ બધી ખાલી જગ્યા છે" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "ખૂબ સરળ છે/પદ્ધતિસરનું છે" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "રાષ્ટ્રિય વીમા નંબર જેવું દેખાય છે." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "શબ્દકોષના શબ્દ પર આધારિત છે" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "(આરક્ષિત) શબ્દકોષના શબ્દ પર આધારિત છે" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "શબ્દકોષને લાવી રહ્યા હોય ત્યારે ભૂલ" -diff -up cracklib-2.9.6/po/hi.po.translations cracklib-2.9.6/po/hi.po ---- cracklib-2.9.6/po/hi.po.translations 2015-10-22 18:24:54.376118732 +0200 -+++ cracklib-2.9.6/po/hi.po 2014-07-09 17:24:45.000000000 +0200 -@@ -2,84 +2,85 @@ - # Hindi translations for cracklib package. - # Copyright (C) 2009, 2010 Free Software Foundation, Inc. - # This file is distributed under the same license as the cracklib package. --# -+# - # Rajesh Ranjan , 2010. -+# rranjan , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default.cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2010-04-06 12:21+0530\n" --"Last-Translator: Rajesh Ranjan \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-23 04:21-0400\n" -+"Last-Translator: rranjan \n" - "Language-Team: Hindi \n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: hi\n" - "Plural-Forms: nplurals=2; plural=(n!=1);\n" - "\n" -+"X-Generator: Zanata 3.1.2\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "आप कूटशब्द फ़ाइल में पंजीकृत नहीं हैं" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "यह आपके उपयोक्ता नाम पर आधारित है" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "यह आपकी कूटशब्द प्रविष्टि पर आधारित है" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "यह आपकी कूटशब्द प्रविष्टि से निकला हुआ है" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "यह आपकी कूटशब्द प्रविष्टि से निकला हुआ है" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "यह आपकी कूटशब्द प्रविष्टि से निकलने योग्य है" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "यह आपकी कूटशब्द प्रविष्टि से निकलने योग्य है" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "आप कूटशब्द फ़ाइल में पंजीकृत नहीं हैं" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "यह बहुत ही छोटा है" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "यह बहुत छोटा है" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "इसमें पर्याप्त मात्रा में भिन्न वर्ण समाहित नहीं हैं" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "यह पूरी तरह से खाली स्थान है" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "यह काफी सरल/क्रमबद्ध है" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "यह राष्ट्रीय बीमा संख्या की तरह दिखता है." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "यह शब्दकोश के शब्द पर आधारित है" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "यह शब्दकोश के शब्द (विलोम) पर आधारित है" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "शब्दकोश लोड करने में त्रुटि" -diff -up cracklib-2.9.6/po/it.po.translations cracklib-2.9.6/po/it.po ---- cracklib-2.9.6/po/it.po.translations 2015-10-22 18:24:54.376118732 +0200 -+++ cracklib-2.9.6/po/it.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,81 +1,82 @@ - # SOME DESCRIPTIVE TITLE. - # This file is put in the public domain. - # FIRST AUTHOR , YEAR. --# -+# fvalen , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2005-06-23 13:15+02:00\n" --"Last-Translator: Novell Language \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-24 10:43-0400\n" -+"Last-Translator: fvalen \n" - "Language-Team: Novell Language \n" --"Language: \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=utf-8\n" -+"Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 0.9.6\n" -+"Language: it\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=2; plural=(n != 1)\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "Non siete registrati nel file delle password" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "Si basa sul vostro nome utente" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "Si basa sulla vostra password registrata" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "Deriva dalla vostra password registrata" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "Deriva dalla vostra password registrata" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "Può essere derivata dalla vostra password registrata" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "Può essere derivata dalla vostra password registrata" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "Non siete registrati nel file delle password" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "E' TROPPO breve" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "E' troppo breve" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "Non contiene abbastanza caratteri DIFFERENTI" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "E' composta solo da caratteri di spaziatura" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "E' troppo semplice/sistematica" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "Sembra essere un codice dell'Assicurazione" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "Si basa su un termine di dizionario" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "Si basa su un termine (rovesciato) di dizionario" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "errore nel caricare il dizionario" -diff -up cracklib-2.9.6/po/ja.po.translations cracklib-2.9.6/po/ja.po ---- cracklib-2.9.6/po/ja.po.translations 2015-10-22 18:24:54.376118732 +0200 -+++ cracklib-2.9.6/po/ja.po 2014-07-09 17:24:45.000000000 +0200 -@@ -2,80 +2,82 @@ - # Copyright (C) YEAR Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. - # FIRST AUTHOR , YEAR. --# -+# noriko , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2005-08-18 11:52-0000\n" --"Last-Translator: Novell Language \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-30 01:55-0400\n" -+"Last-Translator: noriko \n" - "Language-Team: Novell Language \n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" -+"Language: ja\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=1; plural=0\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "パスワードファイルで登録されていません" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "パスワードファイルはユーザー名に基づいています" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "パスワードエントリに基づいています" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "パスワードエントリから引き出されています" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "パスワードエントリから引き出されています" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "パスワードエントリから引き出せます" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "パスワードエントリから引き出せます" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "パスワードファイルで登録されていません" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "あまりにも短かすぎます" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "短かすぎます" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "異なる文字が十分に含まれていません" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "すべて余白です" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "単純/系統的すぎます" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "国民保険番号のように見えます。" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "辞書の単語に基づいています" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "(逆順の)辞書の単語に基づいています" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "辞書の読み込み中二エラーが発生しました" -diff -up cracklib-2.9.6/po/kn.po.translations cracklib-2.9.6/po/kn.po ---- cracklib-2.9.6/po/kn.po.translations 2015-10-22 18:24:54.376118732 +0200 -+++ cracklib-2.9.6/po/kn.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,83 +1,84 @@ - # translation of cracklib.po to Kannada - # Copyright (C) 2008 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Shankar Prasad , 2008. -+# Shankar Prasad , 2008, 2013. - msgid "" - msgstr "" --"Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2008-12-11 11:49+0530\n" -+"Project-Id-Version: PACKAGE VERSION\n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2013-08-06 14:45+0530\n" -+"PO-Revision-Date: 2013-10-28 02:15-0400\n" - "Last-Translator: Shankar Prasad \n" --"Language-Team: Kannada \n" --"Language: kn\n" -+"Language-Team: Kannada \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" --"Plural-Forms: nplurals=2; plural=(n != 1);\n" -+"Language: kn\n" -+"Plural-Forms: nplurals=2; plural=(n != 1);\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "ಗುಪ್ತಪದದ ಕಡತದಲ್ಲಿ ನಿಮ್ಮ ಹೆಸರು ನೋಂದಾಯಿಸಲ್ಪಟ್ಟಿಲ್ಲ" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "ಇದು ನಿಮ್ಮ ಬಳಕೆದಾರಹೆಸರಿನ ಮೇಲೆ ಆಧರಿತವಾಗಿದೆ" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "ಇದು ನಿಮ್ಮ ಗುಪ್ತಪದ ನಮೂದಿನ ಮೇಲೆ ಆಧರಿತವಾಗಿದೆ" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "ಇದನ್ನು ನಿಮ್ಮ ಗುಪ್ತಪದ ನಮೂದಿನಿಂದ ತೆಗೆದುಕೊಳ್ಳಲಾಗಿದೆ" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "ಇದು ನಿಮ್ಮ ಗುಪ್ತಪದ ನಮೂದಿನಿಂದ ತೆಗೆದುಕೊಳ್ಳಲ್ಪಟ್ಟಿದೆ" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "ಇದನ್ನು ನಿಮ್ಮ ಗುಪ್ತಪದ ನಮೂದಿನಿಂದ ತೆಗೆದುಕೊಳ್ಳಬಹುದಾಗಿದೆ" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "ಇದನ್ನು ನಿಮ್ಮ ಗುಪ್ತಪದ ನಮೂದಿನಿಂದ ತೆಗೆದುಕೊಳ್ಳಬಹುದಾಗಿದೆ" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "ಗುಪ್ತಪದದ ಕಡತದಲ್ಲಿ ನಿಮ್ಮ ಹೆಸರು ನೋಂದಾಯಿಸಲ್ಪಟ್ಟಿಲ್ಲ" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "ಇದು ಅತ್ಯಂತ ಚಿಕ್ಕದಾಗಿದೆ" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "ಇದು ಬಹಳ ಚಿಕ್ಕದಾಗಿದೆ" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ಇದು ವಿಭಿನ್ನವಾದ ಸಾಕಷ್ಟು ಅಕ್ಷರಗಳನ್ನು ಹೊಂದಿಲ್ಲ" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "ಇದು ಕೇವಲ ಖಾಲಿ ಜಾಗಗಳನ್ನು ಹೊಂದಿದೆ" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "ಇದು ಬಹಳ ಸರಳ/ಊಹಿಸಬಹುದಾಗಿದೆ" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ಇದು ರಾಷ್ಟ್ರೀಯ ವಿಮೆ ಸಂಖ್ಯೆಯಂತೆ ಕಾಣಿಸುತ್ತಿದೆ" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "ಇದು ಶಬ್ಧಕೋಶದಲ್ಲಿನ ಒಂದು ಪದದಂತಿದೆ" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "ಇದು ಶಬ್ಧಕೋಶದಲ್ಲಿನ ಒಂದು ಪದದಂತಿದೆ(ತಿರುಮುರುವು)" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "ಕೋಶವನ್ನು ಲೋಡ್ ಮಾಡುವಲ್ಲಿ ದೋಷ" -diff -up cracklib-2.9.6/po/ko.po.translations cracklib-2.9.6/po/ko.po ---- cracklib-2.9.6/po/ko.po.translations 2015-10-22 18:24:54.377118756 +0200 -+++ cracklib-2.9.6/po/ko.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,83 +1,84 @@ - # translation of cracklib.default.po to Korean - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Eunju Kim , 2009. -+# eukim , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-18 11:19+1000\n" --"Last-Translator: Eunju Kim \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-24 12:33-0400\n" -+"Last-Translator: eukim \n" - "Language-Team: Korean \n" --"Language: ko\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" --"Plural-Forms: nplurals=1; plural=0;\n" -+"Language: ko\n" -+"Plural-Forms: nplurals=1; plural=0;\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "암호 파일에 등록되어 있지 않습니다 " - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "이는 사용자 이름을 기반으로 합니다 " - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "이는 암호 항목을 기반으로 합니다 " - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "이는 암호 항목에서 파생된 것입니다 " - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "이는 암호 항목에서 파생된 것입니다 " - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "이는 암호 항목에서 파생 가능합니다 " - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "이는 암호 항목에서 파생 가능합니다 " - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "암호 파일에 등록되어 있지 않습니다 " -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "너무 짧습니다 " - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "너무 짧습니다 " - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "다른 문자가 충분히 포함되어 있지 않습니다 " - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "모든 여백입니다 " - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "너무 단순/체계적입니다 " - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "국민 보험 번호와 유사합니다. " - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "사전에 있는 단어를 기반으로 합니다 " - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "(역순) 사전에 있는 단어를 기반으로 합니다 " - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "사전을 불러오는 도중 오류 발생 " -diff -up cracklib-2.9.6/po/ml.po.translations cracklib-2.9.6/po/ml.po ---- cracklib-2.9.6/po/ml.po.translations 2015-10-22 18:24:54.377118756 +0200 -+++ cracklib-2.9.6/po/ml.po 2014-07-09 17:24:45.000000000 +0200 -@@ -2,81 +2,82 @@ - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the cracklib package. - # Ani Peter , 2009. --# -+# apeter , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-11 14:46+0530\n" --"Last-Translator: Ani Peter \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-28 08:56-0400\n" -+"Last-Translator: apeter \n" - "Language-Team: Malayalam\n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: ml\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=2; plural=(n != 1)\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "നിങ്ങള്‍ രഹസ്യവാക്കിനുള്ള ഫയലില്‍ രജിസ്ടര്‍ ചെയ്തിട്ടില്ല" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "നിങ്ങളുടെ ഉപയോക്തൃനാമം അനുസരിച്ചാണു്" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "നിങ്ങളുടെ രഹസ്യവാക്കനുസരിച്ചാണു്" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "നിങ്ങളുടെ രഹസ്യവാക്കില്‍ നിന്നും ലഭ്യമാക്കുന്നു" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "നിങ്ങളുടെ രഹസ്യവാക്കില്‍ നിന്നും ലഭ്യമാക്കുന്നു" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "നിങ്ങളുടെ രഹസ്യവാക്കില്‍ നിന്നും ലഭ്യമാക്കുവാന്‍ സാധിക്കുന്നു" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "നിങ്ങളുടെ രഹസ്യവാക്കില്‍ നിന്നും ലഭ്യമാക്കുന്നു" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "നിങ്ങള്‍ രഹസ്യവാക്കിനുള്ള ഫയലില്‍ രജിസ്ടര്‍ ചെയ്തിട്ടില്ല" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "വളരെ ചെറുതാണു്" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "വളരെ ചെറുതാണു്" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "അനവധി തരത്തിലുള്ള അക്ഷരങ്ങള്‍ നല്‍കുക" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "എല്ലാം വൈറ്റ്സ്പെയിസാണു്" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "വളരെ ലളിതമാണു്" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ഒരു നാഷണല്‍ ഇന്‍ഷുറന്‍സ് നംബര്‍ പോലുണ്ടു്." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "നിഘണ്ടുവിലുള്ള ഒരു വാക്കിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണു്" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "നിഘണ്ടുവിലുള്ള ഒരു വാക്കിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണു്" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "നിഘണ്ടു ലഭ്യമാക്കുന്നതില്‍ പിശക്" -diff -up cracklib-2.9.6/po/mr.po.translations cracklib-2.9.6/po/mr.po ---- cracklib-2.9.6/po/mr.po.translations 2015-10-22 18:24:54.377118756 +0200 -+++ cracklib-2.9.6/po/mr.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,83 +1,84 @@ - # translation of cracklib.default.cracklib.po to Marathi - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Sandeep Shedmake , 2009. -+# Sandeep Shedmake , 2009, 2013. - msgid "" - msgstr "" --"Project-Id-Version: cracklib.default.cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-11 12:24+0530\n" -+"Project-Id-Version: PACKAGE VERSION\n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2013-08-06 14:45+0530\n" -+"PO-Revision-Date: 2013-10-13 01:28-0400\n" - "Last-Translator: Sandeep Shedmake \n" - "Language-Team: Marathi \n" --"Language: mr\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: mr\n" - "Plural-Forms: nplurals=2; plural=(n!=1);\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "तुम्ही पासवर्ड फाइलमध्ये नोंदणीकृत नाही" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "तुमच्या वापरकर्तानावावर आधारीत आहे" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "तुमच्या पासवर्ड नोंदवर आधारीत आहे" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "तुमच्या पासवर्ड नोंद पासून प्राप्त आहे" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "तुमच्या पासवर्ड नोंद पासून प्राप्त" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "तुमच्या पासवर्ड नोंद पासून प्राप्यजोगी आहे" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "तुमच्या पासवर्ड नोंद पासून प्राप्यजोगी" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "तुम्ही पासवर्ड फाइलमध्ये नोंदणीकृत नाही" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "खूपच लहान" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "खूप लहान आहे" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "अतिरीक्त वेगळे अक्षर समाविष्टीत नाही" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "सर्वत्र वाईटस्पेस् आहे" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "खूपच सोपे/पद्धतशीर आहे" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "राष्ट्रीय इन्शॉरन्स् क्रमांक प्रमाणे आढळते." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "शब्दकोषमधील शब्दावर आधारीत आहे" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "(उलटे) शब्दकोषमधील शब्दावर आधारीत आहे" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "शब्दकोष लोड करतेवेळी त्रुटी" -diff -up cracklib-2.9.6/po/or.po.translations cracklib-2.9.6/po/or.po ---- cracklib-2.9.6/po/or.po.translations 2015-10-22 18:24:54.377118756 +0200 -+++ cracklib-2.9.6/po/or.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,84 +1,85 @@ - # translation of cracklib.default.cracklib.or.po to Oriya - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Manoj Kumar Giri , 2009. -+# mgiri , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default.cracklib.or\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-12 13:02+0530\n" --"Last-Translator: Manoj Kumar Giri \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-22 06:40-0400\n" -+"Last-Translator: mgiri \n" - "Language-Team: Oriya \n" --"Language: or\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" --"Plural-Forms: nplurals=2; plural=(n!=1);\n" -+"Language: or\n" -+"Plural-Forms: nplurals=2; plural=(n!=1);\n" - "\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "ପ୍ରବେଶ ସଂକେତ ଫାଇଲରେ ଆପଣ ପଞ୍ଜିକୃତ ହୋଇନାହାନ୍ତି" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "ଏହା ଆପଣଙ୍କର ଚାଳକନାମ ଉପରେ ଆଧାରିତ" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "ଏହା ଆପଣଙ୍କର ପ୍ରବେଶ ସଂକେତ ଭରଣ ଉପରେ ଆଧାରିତ" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "ଏହା ଆପଣଙ୍କର ପ୍ରବେଶ ସଂକେତ ଭରଣରୁ ଉତ୍ପନ୍ନ କରାହୋଇଥାଏ" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "ଏହା ଆପଣଙ୍କର ପ୍ରବେଶ ସଂକେତ ଭରଣରୁ ଉତ୍ପନ୍ନ କରାହୋଇଥାଏ" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "ଏହା ଆପଣଙ୍କର ପ୍ରବେଶ ସଂକେତ ଭରଣରୁ ଉତ୍ପନ୍ନ କରିବା ଯୋଗ୍ୟ" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "ଏହା ଆପଣଙ୍କର ପ୍ରବେଶ ସଂକେତ ଭରଣରୁ ଉତ୍ପନ୍ନ କରିବା ଯୋଗ୍ୟ" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "ପ୍ରବେଶ ସଂକେତ ଫାଇଲରେ ଆପଣ ପଞ୍ଜିକୃତ ହୋଇନାହାନ୍ତି" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "ଏହା ଅତ୍ୟଧିକ ଛୋଟ ଅଟେ" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "ଏହା ଅତ୍ୟଧିକ ଛୋଟ ଅଟେ" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ଏହା ଯଥେଷ୍ଟ ଭିନ୍ନ ବର୍ଣ୍ଣ ଧାରଣ କରିନଥାଏ" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "ଏହା କେବଳ ଖାଲିସ୍ଥାନ ଅଟେ" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "ଏହା ଅତ୍ୟଧିକ ସରଳ/ନିୟମାନୁବର୍ତ୍ତୀ" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ଏହା ଗୋଟିଏ ଜାତୀୟ ବୀମା ସଂଖ୍ୟା ପରି ଦେଖାଯାଉଛି।" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "ଏହା ଅଭିଧାନ ଶବ୍ଦ ଉପରେ ଆଧାରିତ" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "ଏହା ଗୋଟିଏ (ଓଲଟା) ଅଭିଧାନ ଶବ୍ଦ ଉପରେ ଆଧାରିତ" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "ଅଭିଧାନ ଧାରଣ କରିବାରେ ତ୍ରୁଟି" -diff -up cracklib-2.9.6/po/pa.po.translations cracklib-2.9.6/po/pa.po ---- cracklib-2.9.6/po/pa.po.translations 2015-10-22 18:24:54.378118779 +0200 -+++ cracklib-2.9.6/po/pa.po 2014-07-09 17:24:45.000000000 +0200 -@@ -2,84 +2,85 @@ - # translation of cracklib.po to Panjabi - # Copyright (C) 2005 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Amanpreet Singh Alam[ਆਲਮ] , 2005, 2009. - # A S Alam , 2009. -+# asaini , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.pa\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-17 05:52+0530\n" --"Last-Translator: A S Alam \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-08 08:06-0400\n" -+"Last-Translator: asaini \n" - "Language-Team: Punjabi/Panjabi \n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: Lokalize 1.0\n" -+"Language: pa\n" - "Plural-Forms: nplurals=2; plural=(n != 1);\n" -+"X-Generator: Zanata 3.1.2\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "ਤੁਸੀਂ ਪਾਸਵਰਡ ਫਾਇਲ 'ਚ ਰਜਿਸਟਰ ਨਹੀਂ ਹੋ" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "ਇਹ ਤੁਹਾਡੇ ਯੂਜ਼ਰ-ਨਾਂ ਮੁਤਾਬਿਕ ਨਹੀਂ ਹੈ" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "ਇਹ ਤੁਹਾਡੇ ਪਾਸਵਰਡ ਐਂਟਰੀ ਮੁਤਾਬਕ ਹੈ" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "ਇਹ ਤੁਹਾਡੇ ਪਾਸਵਰਡ ਐਂਟਰੀ ਤੋਂ ਬਣਾਇਆ ਗਿਆ ਹੈ" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "ਇਹ ਤੁਹਾਡੇ ਪਾਸਵਰਡ ਐਂਟਰੀ ਤੋਂ ਬਣਾਇਆ ਗਿਆ ਹੈ" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "ਇਹ ਤੁਹਾਡੇ ਪਾਸਵਰਡ ਐਂਟਰੀ ਤੋਂ ਬਣਾਉਣ ਯੋਗ ਹੈ" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "ਇਹ ਤੁਹਾਡੇ ਪਾਸਵਰਡ ਐਂਟਰੀ ਤੋਂ ਬਣਾਉਣਯੋਗ ਹੈ" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "ਤੁਸੀਂ ਪਾਸਵਰਡ ਫਾਇਲ 'ਚ ਰਜਿਸਟਰ ਨਹੀਂ ਹੋ" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "ਇਹ ਬਹੁਤ ਹੀ ਛੋਟਾ ਢੰਗ ਹੈ" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "ਇਹ ਬਹੁਤ ਛੋਟਾ ਹੈ" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ਇਹ ਵਿੱਚ ਲੋੜੀਦੇ*ਵੱਖਰੇ* ਅੱਖਰ ਮੌਜੂਦ ਨਹੀਂ ਹਨ" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "ਇਹ ਸਿਰਫ਼ ਖਾਲੀ ਥਾਂ ਹੈ" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "ਇਹ ਬਹੁਤ ਸਧਾਰਨ/ਇਕਸਾਰ ਜਿਹਾ ਹੈ" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ਇਹ ਰਾਸ਼ਟਰੀ ਸੁਰੱਖਿਆ ਨੰਬਰ ਵਰਗਾ ਜਾਪਦਾ ਹੈ।" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "ਇਹ ਡਿਕਸ਼ਨਰੀ ਸ਼ਬਦ ਉੱਤੇ ਅਧਾਰਿਤ ਹੈ" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "ਇਹ (ਉਲਟੇ) ਡਿਕਸ਼ਨਰੀ ਸ਼ਬਦ ਉੱਤੇ ਅਧਾਰਿਤ ਹੈ" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "ਸ਼ਬਦ-ਕੋਸ਼ ਲੋਡ ਕਰਨ ਵੇਲੇ ਗਲਤੀ" -diff -up cracklib-2.9.6/po/pt_BR.po.translations cracklib-2.9.6/po/pt_BR.po ---- cracklib-2.9.6/po/pt_BR.po.translations 2015-10-22 18:24:54.378118779 +0200 -+++ cracklib-2.9.6/po/pt_BR.po 2014-07-09 17:24:45.000000000 +0200 -@@ -2,80 +2,82 @@ - # Copyright (C) YEAR Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. - # FIRST AUTHOR , YEAR. --# -+# gcintra , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2005-08-18 15:02+0000\n" --"Last-Translator: Novell Language \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-30 08:53-0400\n" -+"Last-Translator: gcintra \n" - "Language-Team: Novell Language \n" --"Language: \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=utf-8\n" -+"Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" -+"Language: pt-BR\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=2; plural=(n != 1)\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "você não está registrado no arquivo de senha" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "é baseada no seu nome de usuário" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "é baseada na sua entrada de senha" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "deriva de sua entrada de senha" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "deriva de sua entrada de senha" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "é derivável de sua entrada de senha" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "é derivável de sua entrada de senha" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "você não está registrado no arquivo de senha" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "é MUITO curta" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "é muito curta" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "não contém caracteres DIFERENTES suficientes" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "só contém espaços em branco" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "é muito simples/sistemática" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "parece um número de documento oficial." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "é uma palavra da língua portuguesa" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "é baseada em uma palavra da língua portuguesa (ao contrário)" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "erro ao carregar dicionário" -diff -up cracklib-2.9.6/po/ru.po.translations cracklib-2.9.6/po/ru.po ---- cracklib-2.9.6/po/ru.po.translations 2015-10-22 18:24:54.378118779 +0200 -+++ cracklib-2.9.6/po/ru.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,85 +1,86 @@ - # translation of cracklib.pot to Russian - # Copyright (C) 2008, 2009 - # This file is distributed under the same license as the cracklib package. --# -+# - # Anton Dobkin , 2008. - # Yulia Poyarko , 2009. -+# ypoyarko , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-12-03 10:17+1100\n" --"Last-Translator: Yulia \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-22 07:44-0400\n" -+"Last-Translator: ypoyarko \n" - "Language-Team: \n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" --"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" --"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -+"Language: ru\n" -+"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -+"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -+"X-Generator: Zanata 3.1.2\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "вы не зарегистрированы в файле паролей" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "основан на вашем имени пользователя" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" --msgstr "основан на вашем входном пароле" -+msgstr "основан на вашем пароле" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "получен из вашего входного пароля" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "получен из вашего входного пароля" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" --msgstr "получен из вашего входного пароля" -+msgstr "получен из вашего пароля" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" --msgstr "получен из вашего входного пароля" -+msgstr "получен из вашего пароля" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "вы не зарегистрированы в файле паролей" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" --msgstr "СЛИШКОМ короткий" -+msgstr "слишком короткий" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "короткий" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "не содержит достаточное число РАЗЛИЧНЫХ символов" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "состоит из пробелов" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "слишком простой" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "похож на число государственного страхования." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "основан на слове из словаря" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "основан на измененном слове из словаря" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "ошибка при загрузке словаря" -diff -up cracklib-2.9.6/po/ta.po.translations cracklib-2.9.6/po/ta.po ---- cracklib-2.9.6/po/ta.po.translations 2015-10-22 18:24:54.378118779 +0200 -+++ cracklib-2.9.6/po/ta.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,83 +1,84 @@ - # translation of cracklib.default.cracklib.po to Tamil - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # I. Felix , 2009. -+# shkumar , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default.cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-11 14:21+0530\n" --"Last-Translator: I. Felix \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-11-11 09:51-0500\n" -+"Last-Translator: shkumar \n" - "Language-Team: Tamil \n" --"Language: ta\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: ta\n" - "Plural-Forms: nplurals=2; plural=(n!=1);\\n\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "நீங்கள் கடவுச்சொல் கோப்பில் பதிவு செய்யவில்லை" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "இது உங்கள் பயனர்பெயர் அடிப்படையில் உள்ளது" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "இது உங்கள் கடவுச்சொல் உள்ளீடு படி உள்ளது" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "இது உங்கள் கடவுச்சொல் உள்ளீடிலிருந்து வரையறுக்கப்பட்டது" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "இது உங்கள் கடவுச்சொல் உள்ளீடிலிருந்து வரையறுக்கப்பட்டது" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "இது உங்கள் கடவுச்சொல் உள்ளீடிலிருந்து வரையறுக்கப்படக்கூடியது" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "இது உங்கள் கடவுச்சொல் உள்ளீடிலிருந்து வரையறுக்கப்படக்கூடியது" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "நீங்கள் கடவுச்சொல் கோப்பில் பதிவு செய்யவில்லை" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "இது மிகவும் சிறியது" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "இது மிகவும் சிறியது" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "இது போதிய வேறுபாடு எழுத்துக்களை கொண்டிருக்கவில்லை" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "இது எல்லாம் காலிஇடங்கள்" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "இது மிகவும் எளியது/அமைப்பானது" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "இது ஒரு தேசிய காப்பீடு எண் போலுள்ளது." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "இது ஒரு அகராதி சொல்லை அடிப்படையாக கொண்டது" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "இது ஒரு (தலைகீழானது) அகராதி சொல்லை அடிப்படையாக கொண்டது" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "அகராதியை ஏற்றுவதில் பிழை" -diff -up cracklib-2.9.6/po/te.po.translations cracklib-2.9.6/po/te.po ---- cracklib-2.9.6/po/te.po.translations 2015-10-22 18:24:54.379118803 +0200 -+++ cracklib-2.9.6/po/te.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,84 +1,85 @@ - # translation of cracklib.pot to Telugu - # Copyright (C) 2009 Free Software Foundation, Inc. - # This file is distributed under the same license as the cracklib package. --# -+# - # Krishna Babu K , 2009. -+# kkrothap , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2009-11-11 15:13+0530\n" --"Last-Translator: Krishna Babu K \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-09-26 10:54-0400\n" -+"Last-Translator: kkrothap \n" - "Language-Team: Telugu \n" --"Language: te\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: te\n" - "Plural-Forms: nplurals=2; plural=(n!=1);\n" - "\n" -+"X-Generator: Zanata 3.1.2\n" -+ -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "మీరు సంకేతపదపు ఫైలునందు నమోదు కాలేదు" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "ఇది మీ వినియోగదారినామముపై ఆధారపడి వుంది" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "ఇది మీ సంకేతపదము ప్రవేశముపై ఆధారపడి వుంది" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "ఇది మీ సంకేతపదము ప్రవేశమునుండి ఉత్పాదించబడింది" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "ఇది మీ సంకేతపదము ప్రవేశమునుండి ఉత్పాదించబడింది" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "ఇది మీ సంకేతపదము ప్రవేశమునుండి ఉత్పాదించబడ గలదు" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "ఇది మీ సంకేతపదము ప్రవేశమునుండి ఉత్పాదించబడ గలదు" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "మీరు సంకేతపదపు ఫైలునందు నమోదు కాలేదు" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "ఇది పొట్టి దానికి మార్గము" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "ఇది మరీ పొట్టిదిగా వుంది" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "ఇది కావలసినన్ని విభిన్న అక్షరాలను కలిగిలేదు" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "ఇది అంతా ఖాళీగానే వుంది" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "ఇదీ మరీ సాధారణంగా/క్రమపద్దతిలో వుంది" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "ఇది నేష్నల్ ఇన్సూరెన్స్ సంఖ్య వలె వుంది." - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "ఇది నిఘంటువు పదముపై ఆధారపడివుంది" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "ఇది నిఘంటువు(కలిగివున్న) పదముపై ఆధారపడివుంది" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "నిఘంటువును లోడు చేయుటలో దోషం" -diff -up cracklib-2.9.6/po/zh_CN.po.translations cracklib-2.9.6/po/zh_CN.po ---- cracklib-2.9.6/po/zh_CN.po.translations 2011-07-26 11:55:29.000000000 +0200 -+++ cracklib-2.9.6/po/zh_CN.po 2014-07-09 17:24:45.000000000 +0200 -@@ -1,78 +1,84 @@ - # translation of cracklib.default.po to Wei Liu - # Copyright (C) 2010 Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. --# -+# - # Leah Liu , 2010. -+# Leah Liu , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib.default\n" - "Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2010-03-02 21:00-0600\n" --"PO-Revision-Date: 2010-09-07 23:42+1000\n" -+"PO-Revision-Date: 2013-09-25 01:44-0400\n" - "Last-Translator: Leah Liu \n" - "Language-Team: Wei Liu\n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" --"X-Generator: KBabel 1.11.4\n" -+"Language: zh-CN\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=1; plural=0\n" - --#: lib/fascist.c:550 -+#: ../lib/fascist.c:550 - msgid "you are not registered in the password file" - msgstr "尚未在口令文件中注册" - --#: lib/fascist.c:564 -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "它基于用户名" - --#: lib/fascist.c:629 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "它基于输入的口令" - --#: lib/fascist.c:649 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "它派生自输入的口令" - --#: lib/fascist.c:662 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "它派生自输入的口令" - --#: lib/fascist.c:676 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "可从输入的口令推断" - --#: lib/fascist.c:690 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "可从输入的口令推断" - --#: lib/fascist.c:726 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "WAY 过短" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "过短" - --#: lib/fascist.c:748 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "它没有包含足够的不同字符" - --#: lib/fascist.c:762 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "全是空格" - --#: lib/fascist.c:781 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "过于简单化/系统化" - --#: lib/fascist.c:786 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "看起来像国家保险号码。" - --#: lib/fascist.c:813 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "它基于字典单词" - --#: lib/fascist.c:832 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "它基于(颠倒的)字典单词" - -+#: ../lib/fascist.c:867 -+msgid "error loading dictionary" -+msgstr "载入字典出错" -diff -up cracklib-2.9.6/po/zh_TW.po.translations cracklib-2.9.6/po/zh_TW.po ---- cracklib-2.9.6/po/zh_TW.po.translations 2015-10-22 18:24:54.379118803 +0200 -+++ cracklib-2.9.6/po/zh_TW.po 2014-07-09 17:24:45.000000000 +0200 -@@ -2,80 +2,82 @@ - # Copyright (C) YEAR Free Software Foundation, Inc. - # This file is distributed under the same license as the PACKAGE package. - # FIRST AUTHOR , YEAR. --# -+# tchuang , 2013. #zanata - msgid "" - msgstr "" - "Project-Id-Version: cracklib\n" --"Report-Msgid-Bugs-To: cracklib-devel@lists.sourceforge.net\n" --"POT-Creation-Date: 2015-08-18 13:45-0500\n" --"PO-Revision-Date: 2005-06-23 12:52+0200\n" --"Last-Translator: Novell Language \n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2012-12-14 16:11-0600\n" -+"PO-Revision-Date: 2013-10-22 09:50-0400\n" -+"Last-Translator: tchuang \n" - "Language-Team: Novell Language \n" --"Language: \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=UTF-8\n" - "Content-Transfer-Encoding: 8bit\n" -+"Language: zh-TW\n" -+"X-Generator: Zanata 3.1.2\n" -+"Plural-Forms: nplurals=1; plural=0\n" - --#: lib/fascist.c:516 -+#: ../lib/fascist.c:550 -+msgid "you are not registered in the password file" -+msgstr "您沒有在密碼檔案中註冊。" -+ -+#: ../lib/fascist.c:564 - msgid "it is based on your username" - msgstr "這是根據您的使用者名稱" - --#: lib/fascist.c:576 -+#: ../lib/fascist.c:629 - msgid "it is based upon your password entry" - msgstr "這是根據您的密碼項目" - --#: lib/fascist.c:591 -+#: ../lib/fascist.c:649 - msgid "it is derived from your password entry" - msgstr "這是從您的密碼項目中獲得的" - --#: lib/fascist.c:599 -+#: ../lib/fascist.c:662 - msgid "it's derived from your password entry" - msgstr "這是從您的密碼項目中獲得的" - --#: lib/fascist.c:608 -+#: ../lib/fascist.c:676 - msgid "it is derivable from your password entry" - msgstr "這可以從您的密碼項目中獲得" - --#: lib/fascist.c:617 -+#: ../lib/fascist.c:690 - msgid "it's derivable from your password entry" - msgstr "這可以從您的密碼項目中獲得" - --#: lib/fascist.c:674 --msgid "you are not registered in the password file" --msgstr "您沒有在密碼檔案中註冊。" -- --#: lib/fascist.c:709 -+#: ../lib/fascist.c:726 - msgid "it is WAY too short" - msgstr "太短了" - --#: lib/fascist.c:714 -+#: ../lib/fascist.c:731 - msgid "it is too short" - msgstr "太短了" - --#: lib/fascist.c:731 -+#: ../lib/fascist.c:748 - msgid "it does not contain enough DIFFERENT characters" - msgstr "未包含足夠的的不同字元。" - --#: lib/fascist.c:745 -+#: ../lib/fascist.c:762 - msgid "it is all whitespace" - msgstr "全部都是空格" - --#: lib/fascist.c:764 -+#: ../lib/fascist.c:781 - msgid "it is too simplistic/systematic" - msgstr "太簡單/太過於系統化" - --#: lib/fascist.c:769 -+#: ../lib/fascist.c:786 - msgid "it looks like a National Insurance number." - msgstr "看起來向是國際保險號碼。" - --#: lib/fascist.c:801 -+#: ../lib/fascist.c:813 - msgid "it is based on a dictionary word" - msgstr "根據辭典單字" - --#: lib/fascist.c:820 -+#: ../lib/fascist.c:832 - msgid "it is based on a (reversed) dictionary word" - msgstr "根據 (顛倒的) 辭典單字" - --#: lib/fascist.c:865 -+#: ../lib/fascist.c:867 - msgid "error loading dictionary" --msgstr "" -+msgstr "載入字典時發生了錯誤" diff --git a/cracklib.spec b/cracklib.spec index caacbd5..183ca97 100644 --- a/cracklib.spec +++ b/cracklib.spec @@ -4,38 +4,25 @@ Summary: A password-checking library Name: cracklib -Version: 2.9.6 -Release: 13%{?dist} -Group: System Environment/Libraries -Source0: https://github.com/cracklib/cracklib/releases/download/cracklib-%{version}/cracklib-%{version}.tar.gz -Source1: https://github.com/cracklib/cracklib/releases/download/cracklib-%{version}/cracklib-words-%{version}.gz - -# For man pages. -Source2: http://ftp.us.debian.org/debian/pool/main/c/cracklib2/cracklib2_2.8.19-1.debian.tar.gz -Source40: http://ftp.us.debian.org/debian/pool/main/c/cracklib2/cracklib2_2.8.19-1.dsc +Version: 2.9.11 +Release: 8%{?dist} +URL: https://github.com/cracklib/cracklib +License: LGPL-2.1-or-later +Source0: https://github.com/cracklib/cracklib/releases/download/v%{version}/cracklib-%{version}.tar.gz +Source1: https://github.com/cracklib/cracklib/releases/download/v%{version}/cracklib-words-%{version}.gz # From attachment to https://bugzilla.redhat.com/show_bug.cgi?id=627449 -Source3: cracklib.default.zh_CN.po - +Source2: cracklib.default.zh_CN.po # No upstream source for this, just words missing from the current cracklib-words -Source10: missing-words.gz +Source3: missing-words.gz + +Patch: cracklib-2.9.11-packlib-reentrant.patch +Patch: cracklib-2.9.11-simplistic.patch -Patch1: cracklib-2.9.1-inttypes.patch -Patch2: cracklib-2.9.0-python-gzdicts.patch -Patch4: cracklib-2.9.6-packlib-reentrant.patch -Patch6: cracklib-2.9.6-simplistic.patch -Patch7: cracklib-2.9.6-translation-updates.patch -Patch8: cracklib-2.9.6-cve-2016-6318.patch -URL: http://sourceforge.net/projects/cracklib/ -License: LGPLv2+ -Buildroot: %{_tmppath}/%{name}-%{version}-root BuildRequires: gcc BuildRequires: words, gettext BuildRequires: gettext-autopoint BuildRequires: zlib-devel -%if 0%{?rhel} == 0 -BuildRequires: python2-devel -%endif Conflicts: cracklib-dicts < 2.8 # The cracklib-format script calls gzip, but without a specific path. Requires: gzip @@ -60,33 +47,16 @@ CrackLib, you will also want to install the cracklib-dicts package. %package devel Summary: Development files needed for building applications which use cracklib -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} +Requires: %{name}%{?_isa} = %{version}-%{release} %description devel The cracklib-devel package contains the header files and libraries needed for compiling applications which use cracklib. -%if 0%{?rhel} == 0 -%package -n python2-cracklib -Summary: Python bindings for applications which use cracklib -Group: Development/Libraries -Requires: %{name} = %{version}-%{release} -%{?python_provide:%python_provide python2-cracklib} -# Remove before F30 -Provides: %{name}-python = %{version}-%{release} -Provides: %{name}-python%{?_isa} = %{version}-%{release} -Obsoletes: %{name}-python < %{version}-%{release} - -%description -n python2-cracklib -The cracklib-python package contains a module which permits applications -written in the Python programming language to use cracklib. -%endif - %package dicts Summary: The standard CrackLib dictionaries -Group: System Environment/Libraries BuildRequires: words >= 2-13 +BuildRequires: make Requires: cracklib = %{version}-%{release} %description dicts @@ -98,114 +68,73 @@ contains the utilities necessary for the creation of new dictionaries. If you are installing CrackLib, you should also install cracklib-dicts. %prep -%setup -q -a 2 +%autosetup -p 1 # Replace zn_CN.po with one that wasn't mis-transcoded at some point. -grep '????????????????' po/zh_CN.po -install -p -m 644 %{SOURCE3} po/zh_CN.po - -%patch1 -p1 -b .inttypes -%patch2 -p1 -b .gzdicts -%patch4 -p1 -b .reentrant -%patch6 -p1 -b .simplistic -%patch7 -p1 -b .translations -%patch8 -p1 -b .overflow +install -p -m 644 %{SOURCE2} po/zh_CN.po mkdir cracklib-dicts -for dict in %{SOURCE10} %{SOURCE1} +for dict in %{SOURCE3} %{SOURCE1} do cp -fv ${dict} cracklib-dicts/ done chmod +x util/cracklib-format %build +# Use the dictionary from the build to test +sed -i 's,util/cracklib-check <,util/cracklib-check $(DESTDIR)/$(DEFAULT_CRACKLIB_DICT) <,' Makefile.in %configure --with-pic \ -%if 0%{?rhel} == 0 - --with-python \ -%else --without-python \ -%endif --with-default-dict=%{dictpath} --disable-static make -C po update-gmo make %install -[ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT 'pythondir=${pyexecdir}' +%make_install 'pythondir=${pyexecdir}' ./util/cracklib-format cracklib-dicts/* | \ -./util/cracklib-packer $RPM_BUILD_ROOT/%{dictpath} -./util/cracklib-format $RPM_BUILD_ROOT/%{dictdir}/cracklib-small | \ -./util/cracklib-packer $RPM_BUILD_ROOT/%{dictdir}/cracklib-small -rm -f $RPM_BUILD_ROOT/%{dictdir}/cracklib-small -sed s,/usr/lib/cracklib_dict,%{dictpath},g lib/crack.h > $RPM_BUILD_ROOT/%{_includedir}/crack.h -ln -s cracklib-format $RPM_BUILD_ROOT/%{_sbindir}/mkdict -ln -s cracklib-packer $RPM_BUILD_ROOT/%{_sbindir}/packer -touch $RPM_BUILD_ROOT/top +./util/cracklib-packer %{buildroot}%{dictpath} +./util/cracklib-format %{buildroot}%{dictdir}/cracklib-small | \ +./util/cracklib-packer %{buildroot}%{dictdir}/cracklib-small +rm -f %{buildroot}%{dictdir}/cracklib-small +sed s,/usr/lib/cracklib_dict,%{dictpath},g lib/crack.h > %{buildroot}%{_includedir}/crack.h +ln -s cracklib-format %{buildroot}%{_sbindir}/mkdict +# packer link removed as it clashes with hashicorp's packer binary. +#ln -s cracklib-packer %{buildroot}/%{_sbindir}/packer +touch %{buildroot}/top toprelpath=.. -touch $RPM_BUILD_ROOT/top -while ! test -f $RPM_BUILD_ROOT/%{_libdir}/$toprelpath/top ; do +touch %{buildroot}/top +while ! test -f %{buildroot}%{_libdir}/$toprelpath/top ; do toprelpath=../$toprelpath done -rm -f $RPM_BUILD_ROOT/top +rm -f %{buildroot}/top if test %{dictpath} != %{_libdir}/cracklib_dict ; then -ln -s $toprelpath%{dictpath}.hwm $RPM_BUILD_ROOT/%{_libdir}/cracklib_dict.hwm -ln -s $toprelpath%{dictpath}.pwd $RPM_BUILD_ROOT/%{_libdir}/cracklib_dict.pwd -ln -s $toprelpath%{dictpath}.pwi $RPM_BUILD_ROOT/%{_libdir}/cracklib_dict.pwi +ln -s $toprelpath%{dictpath}.hwm %{buildroot}%{_libdir}/cracklib_dict.hwm +ln -s $toprelpath%{dictpath}.pwd %{buildroot}%{_libdir}/cracklib_dict.pwd +ln -s $toprelpath%{dictpath}.pwi %{buildroot}%{_libdir}/cracklib_dict.pwi fi -rm -f $RPM_BUILD_ROOT/%{_libdir}/python*/site-packages/_cracklib*.*a -rm -f $RPM_BUILD_ROOT/%{_libdir}/libcrack.la +rm -f %{buildroot}%{_libdir}/python*/site-packages/_cracklib*.*a +rm -f %{buildroot}%{_libdir}/libcrack.la -mkdir -p $RPM_BUILD_ROOT/%{_mandir}/man{3,8} -install -p -m644 debian/*.3 $RPM_BUILD_ROOT/%{_mandir}/man3/ -install -p -m644 debian/*.8 $RPM_BUILD_ROOT/%{_mandir}/man8/ -if ! test -s $RPM_BUILD_ROOT/%{_mandir}/man8/cracklib-packer.8 ; then - echo .so man8/cracklib-format.8 > $RPM_BUILD_ROOT/%{_mandir}/man8/cracklib-packer.8 +mkdir -p %{buildroot}%{_mandir}/man{3,8} +install -p -m644 doc/*.3 %{buildroot}%{_mandir}/man3/ +install -p -m644 doc/*.8 %{buildroot}%{_mandir}/man8/ +if ! test -s %{buildroot}%{_mandir}/man8/cracklib-packer.8 ; then + echo .so man8/cracklib-format.8 > %{buildroot}%{_mandir}/man8/cracklib-packer.8 fi -if ! test -s $RPM_BUILD_ROOT/%{_mandir}/man8/cracklib-unpacker.8 ; then - echo .so man8/cracklib-format.8 > $RPM_BUILD_ROOT/%{_mandir}/man8/cracklib-unpacker.8 +if ! test -s %{buildroot}%{_mandir}/man8/cracklib-unpacker.8 ; then + echo .so man8/cracklib-format.8 > %{buildroot}%{_mandir}/man8/cracklib-unpacker.8 fi %find_lang %{name} %check -make test -%if 0%{?rhel} == 0 -# We want to check that the new library is able to open the new dictionaries, -# using the new python module. -LD_LIBRARY_PATH=$RPM_BUILD_ROOT/%{_libdir} %{__python} 2>&1 << EOF -import string, sys -# Prepend buildroot-specific variations of the python path to the python path. -syspath2=[] -for element in sys.path: - syspath2.append("$RPM_BUILD_ROOT/" + element) -syspath2.reverse() -for element in syspath2: - sys.path.insert(0,element) -# Now actually do the test. If we get a different result, or throw an -# exception, the script will end with the error. -import cracklib -try: - s = cracklib.FascistCheck("cracklib", "$RPM_BUILD_ROOT/%{dictpath}") -except ValueError, message: - expected = "it is based on a dictionary word" - if message != expected: - print "Got unexpected result \"%s\"," % messgae, - print "instead of expected value of \"%s\"." % expected - sys.exit(1) - print "Got expected result \"%s\"," % message - sys.exit(0) -finally: - sys.exit(0) -EOF -%endif +make test DESTDIR=%{buildroot} %ldconfig_scriptlets %files -f %{name}.lang -%defattr(-,root,root) %doc README README-WORDS NEWS README-LICENSE AUTHORS -%{!?_licensedir:%global license %%doc} %license COPYING.LIB %{_libdir}/libcrack.so.* %dir %{_datadir}/cracklib @@ -214,27 +143,99 @@ EOF %{_mandir}/man8/* %files devel -%defattr(-,root,root) %{_includedir}/* %{_libdir}/libcrack.so %{_mandir}/man3/* %files dicts -%defattr(-,root,root) %{_datadir}/cracklib/pw_dict.* %{_datadir}/cracklib/cracklib-small.* %{_libdir}/cracklib_dict.* %{_sbindir}/mkdict -%{_sbindir}/packer - -%if 0%{?rhel} == 0 -%files -n python2-cracklib -%defattr(-,root,root) -%{_libdir}/python*/site-packages/_cracklib*.so -%{_libdir}/python*/site-packages/*.py* -%endif %changelog +* Wed Jul 23 2025 Fedora Release Engineering - 2.9.11-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Thu Jan 16 2025 Fedora Release Engineering - 2.9.11-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Wed Jul 17 2024 Fedora Release Engineering - 2.9.11-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Jan 24 2024 Fedora Release Engineering - 2.9.11-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 2.9.11-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Aug 04 2023 Dmitry Belyavskiy - 2.9.11-3 +- migrated to SPDX license + +* Wed Jul 19 2023 Fedora Release Engineering - 2.9.11-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Fri Jul 07 2023 Paul Wouters - 2.9.7-31 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Aug 30 2022 Parag Nemade - 2.9.7-30 +- As -dicts subpackage installs files under %%{_libdir} path it should not be noarch +- this fixes FTBFS on F37+ + +* Wed Jul 20 2022 Fedora Release Engineering - 2.9.7-29 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Wed Jan 19 2022 Fedora Release Engineering - 2.9.6-28 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Aug 30 2021 Paul Wouters - 2.9.6-27 +- Resolves: rhbz#1994196 Remove /usr/bin/packer symbolic link + +* Wed Jul 21 2021 Fedora Release Engineering - 2.9.6-26 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 2.9.6-25 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 2.9.6-24 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 13 2020 Tom Stellard - 2.9.6-23 +- Use make macros +- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro + +* Tue Jan 28 2020 Fedora Release Engineering - 2.9.6-22 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Aug 9 2019 Tomáš Mráz - 2.9.6-21 +- Drop Python 2 bindings completely + +* Wed Jul 24 2019 Fedora Release Engineering - 2.9.6-20 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 2.9.6-19 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Mon Nov 26 2018 Tomáš Mráz - 2.9.6-18 +- Fix regression in dictionary creation and lookup + +* Wed Oct 10 2018 Tomáš Mráz - 2.9.6-17 +- Fix minor bug found in the Coverity scan + +* Tue Oct 9 2018 Tomáš Mráz - 2.9.6-16 +- Updated translations + +* Fri Jul 13 2018 Tomáš Mráz - 2.9.6-15 +- The test must use the dictionary from the build + +* Thu Jul 12 2018 Fedora Release Engineering - 2.9.6-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed Feb 21 2018 Tomáš Mráz - 2.9.6-13 - Drop Python 2 support in RHEL diff --git a/sources b/sources index a5a9a0f..1a02ec2 100644 --- a/sources +++ b/sources @@ -1,5 +1,3 @@ -12936e97cc34a28f2efec62e115a60e1 cracklib2_2.8.19-1.debian.tar.gz -bf8714368e0a485472b6ad7c4dba06a3 cracklib2_2.8.19-1.dsc -c52f463585d85924b28cdc1e373ae06d cracklib-2.9.6.tar.gz -cae1257e3a9f95c917cc9dbbab852316 cracklib-words-2.9.6.gz -8405c72b4f68fe569da831abff4c0544 missing-words.gz +SHA512 (cracklib-2.9.11.tar.gz) = 9e73a715c8f82723abc36b08906e212aaf79a7f6dfa560c6a98963b1e63aa21f7b612f285a639a41ec9eec7025aa2c16f702aad934cd30bc995f470d62ee4bc3 +SHA512 (cracklib-words-2.9.11.gz) = d1983e8e8fcb9abee4701581d66008eda2d7ad6ee8d017b7fed225b71bd333fa6199338f37fd120c1c6bf1c8a75025692f4118d97e8c384e578000bed59c6aed +SHA512 (missing-words.gz) = 50afb5538ddd15de997883f5ff6925d9084117851cfdcfc02f05c28304d6c17b46ea669fe626ad819e732b6f291f308194300c9db9b110a5c15a4e5d97ca6caa