Handle non-string tag indices correctly.

Sync with rpm-4.0.2.

CVS patchset: 4583
CVS date: 2001/02/27 21:30:27
This commit is contained in:
jbj 2001-02-27 21:30:27 +00:00
parent 84ab8a1f64
commit 74f16c53a3
73 changed files with 29092 additions and 31090 deletions

View File

@ -277,7 +277,9 @@ INPUT = \
./lib/cpio.c \
./lib/cpio.h \
./lib/db1.c \
./lib/db2.c \
./lib/db3.c \
./lib/dbconfig.c \
./lib/depends.c \
./lib/depends.h \
./lib/falloc.c \
@ -314,6 +316,7 @@ INPUT = \
./lib/rpmlibprov.c \
./lib/rpmrc.c \
./lib/scriptlet.c \
./lib/scriptlet.h \
./lib/signature.c \
./lib/signature.h \
./lib/stringbuf.c \

View File

@ -25,7 +25,7 @@ myLDFLAGS = # -L$(top_builddir)/build/.libs -L$(top_builddir)/lib/.libs \
# XXX top_builddir ldpaths are wrong building in tree
myLDADD = $(top_builddir)/build/librpmbuild.la $(top_builddir)/lib/librpm.la \
$(top_builddir)/rpmio/librpmio.la $(top_builddir)/popt/libpopt.la \
@INTLLIBS@
@INTLLIBS@ @LIBMISC@
rpmbindir = `echo $(bindir) | sed -e s,usr/bin,bin,`
rpmbin_PROGRAMS = rpm
@ -40,48 +40,48 @@ pkglib_SCRIPTS = find-provides find-requires mkinstalldirs \
config.guess config.sub
rpmpopt-$(VERSION): rpmpopt
cp $< $@
cp rpmpopt $@
noinst_HEADERS = \
acconfig.h build.h debug.h system.h
rpm_SOURCES = rpm.c
rpm_LDFLAGS = @LDFLAGS_STATIC@ $(myLDFLAGS)
rpm_LDADD = $(myLDADD) @LIBMISC@
rpm_LDADD = $(myLDADD)
rpmb_SOURCES = build.c
rpmb_LDFLAGS = $(myLDFLAGS)
rpmb_LDADD = rpmb.o $(myLDADD)
rpmb.o: rpmqv.c
$(COMPILE) -DIAM_RPMBT -o $@ -c $<
$(COMPILE) -DIAM_RPMBT -o $@ -c rpmqv.c
rpmdb_SOURCES =
rpmdb_LDFLAGS = $(myLDFLAGS)
rpmdb_LDADD = rpmdb.o $(myLDADD)
rpmdb.o: rpmqv.c
$(COMPILE) -DIAM_RPMDB -o $@ -c $<
$(COMPILE) -DIAM_RPMDB -o $@ -c rpmqv.c
rpmi_SOURCES =
rpmi_LDFLAGS = $(myLDFLAGS)
rpmi_LDADD = rpmi.o $(myLDADD)
rpmi.o: rpmqv.c
$(COMPILE) -DIAM_RPMEIU -o $@ -c $<
$(COMPILE) -DIAM_RPMEIU -o $@ -c rpmqv.c
rpmk_SOURCES =
rpmk_LDFLAGS = $(myLDFLAGS)
rpmk_LDADD = rpmk.o $(myLDADD)
rpmk.o: rpmqv.c
$(COMPILE) -DIAM_RPMK -o $@ -c $<
$(COMPILE) -DIAM_RPMK -o $@ -c rpmqv.c
rpmq_SOURCES =
rpmq_LDFLAGS = $(myLDFLAGS)
rpmq_LDADD = rpmq.o $(myLDADD)
rpmq.o: rpmqv.c
$(COMPILE) -DIAM_RPMQV -o $@ -c $<
$(COMPILE) -DIAM_RPMQV -o $@ -c rpmqv.c
rpm2cpio_SOURCES = rpm2cpio.c
rpm2cpio_LDFLAGS = $(myLDFLAGS)
rpm2cpio_LDADD = $(myLDADD) @LIBMISC@
rpm2cpio_LDADD = $(myLDADD)
$(PROGRAMS): $(myLDADD) @WITH_APIDOCS_TARGET@

View File

@ -42,22 +42,23 @@ dnl
AC_MSG_CHECKING(flag used by libtool to link rpm)
if test X"$GCC" = Xyes ; then
case "$target" in
*-*-solaris*) LDFLAGS_STATIC="";;
*-*-hpux*) LDFLAGS_STATIC="";;
*-*-*) LDFLAGS_STATIC="-all";;
*-*-solaris*) LDFLAGS_STATIC="-static";;
*-*-hpux*) LDFLAGS_STATIC="-static";;
*-*-sysv5uw*) LDFLAGS_STATUS="-static";; # Unixware has no shared libthread.
*-*-*) LDFLAGS_STATIC="-all-static";;
esac
elif test X"$CC" = Xcc ; then
case "$target" in
*-*-linux*) LDFLAGS_STATIC="-all";;
*-*-freebsd*) LDFLAGS_STATIC="-all";;
*-*-osf*) LDFLAGS_STATIC="-all";;
*-*-aix*) LDFLAGS_STATIC="";; # -Wl,-bnso doesn't seem to work...
*-*-hpux*) LDFLAGS_STATIC="";;
*-*-solaris*) LDFLAGS_STATIC="";;
*-*-irix*) LDFLAGS_STATIC="";; #should be -non_shared, but can't
*-*-linux*) LDFLAGS_STATIC="-all-static";;
*-*-freebsd*) LDFLAGS_STATIC="-all-static";;
*-*-osf*) LDFLAGS_STATIC="";; # OSF5 has no shared pthreads libs
*-*-aix*) LDFLAGS_STATIC="-static";; # -Wl,-bnso doesn't seem to work...
*-*-hpux*) LDFLAGS_STATIC="-static";;
*-*-solaris*) LDFLAGS_STATIC="-static";;
*-*-irix*) LDFLAGS_STATIC="-static";; #should be -non_shared, but can't
# link because of crt1.o then.
*-*-ultrix*) LDFLAGS_STATIC="-all";; #ultrix doesn't have shared libs.
*-*-*) LDFLAGS_STATIC=""
*-*-ultrix*) LDFLAGS_STATIC="-all-static";; #ultrix doesn't have shared libs.
*-*-*) LDFLAGS_STATIC="-static"
AC_MSG_WARN([
Unable to guess what option to pass to $CC to generate a static
@ -71,7 +72,7 @@ else
# just link it dynamically
LDFLAGS_STATIC=""
fi
LDFLAGS_STATIC="${LDFLAGS} ${LDFLAGS_STATIC}-static" # libtool format
LDFLAGS_STATIC="${LDFLAGS} ${LDFLAGS_STATIC}" # libtool format
AC_MSG_RESULT($LDFLAGS_STATIC)
AC_SUBST(LDFLAGS_STATIC)
@ -301,8 +302,16 @@ dnl for this macro (not LIBS=...), otherwise the check for dbopen
dnl will fail.
AC_CHECK_LIB(port, writev)
libpthread=""
AC_CHECK_LIB(pthread, pthread_mutex_trylock,[libpthread="-lpthread"])
libthread=""
AC_CHECK_LIB(pthread, pthread_mutex_trylock, [libthread="-lpthread"], [
dnl OSF 5.0 has the the symbols prefixed with __ in libpthread.
AC_CHECK_LIB(pthread, __pthread_mutex_trylock, [libthread="-lpthread"])
])
if test "x$libthread" = "x"; then
# Try in libthread too.
AC_CHECK_LIB(thread, mutex_lock, [libthread="-lthread"])
fi
DBLIBSRCS=""
libdb3=""
@ -314,9 +323,9 @@ AC_CHECK_FUNC(db_create, [DBLIBSRCS="$DBLIBSRCS db3.c"],
AC_CHECK_LIB(db-3.1, db_create, [DBLIBSRCS="$DBLIBSRCS db3.c"; libdb3="-ldb-3.1"],
AC_CHECK_LIB(db-3.0, db_create, [DBLIBSRCS="$DBLIBSRCS db3.c"; libdb3="-ldb-3.0"],
AC_CHECK_LIB(db, db_create, [DBLIBSRCS="$DBLIBSRCS db3.c"; libdb3="-ldb"],
,$libpthread)
,$libpthread)
,$libpthread)
,$libthread)
,$libthread)
,$libthread)
)
dnl Check for Berkeley db2 API.
@ -329,26 +338,45 @@ dnl )
dnl Check for Berkeley db1 API retrofit to db2/db3 database.
dnl AC_CHECK_FUNC(dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c"],
dnl AC_CHECK_LIB(db, dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c"])
dnl AC_CHECK_LIB(db, dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c"])
dnl )
dnl Check for Berkeley db1 API in glibc.
AC_CHECK_FUNC(dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c"],
AC_CHECK_LIB(db1, dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c" ; libdb1="-ldb1"],
AC_CHECK_LIB(db, dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c" ; libdb1="-ldb"])
)
)
AC_MSG_CHECKING(whether to enable DB1 support)
AC_ARG_ENABLE(db1,
[ --disable-db1 Disable DB1 support ],
[
if test "$enableval" = "yes"; then
AC_MSG_RESULT(yes)
usedb1=yes
else
AC_MSG_RESULT(no)
usedb1=no
fi
],[
AC_MSG_RESULT(yes)
usedb1=yes
])
if test "$usedb1" = "yes"; then
dnl Check for Berkeley db1 API in glibc.
AC_CHECK_FUNC(dbopen, [DBLIBSRCS="$DBLIBSRCS db3.c"],
AC_CHECK_LIB(db1, dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c" ; libdb1="-ldb1"],
AC_CHECK_LIB(db, dbopen, [DBLIBSRCS="$DBLIBSRCS db1.c falloc.c" ; libdb1="-ldb"])
)
)
fi
if test X"$DBLIBSRCS" = X; then
AC_MSG_ERROR([sorry rpm requires libdb-3.x.a or libdb1.a (from the Berkeley db package)])
fi
if test -n "$libdb3" -a -n "$libpthread" ; then
AC_MSG_CHECKING(whether $libdb3 needs $libpthread)
if test -n "$libdb3" -a -n "$libthread" ; then
AC_MSG_CHECKING(whether $libdb3 needs $libthread)
saveLIBS="$LIBS"
LIBS="$LIBS $libdb3"
AC_TRY_LINK_FUNC(db_create, AC_MSG_RESULT(no),
[libdb3="$libdb3 $libpthread"; AC_MSG_RESULT(yes)])
[libdb3="$libdb3 $libthread"; AC_MSG_RESULT(yes)])
LIBS="$saveLIBS"
fi
@ -790,8 +818,9 @@ AC_CHECK_FUNC(getmntent, AC_DEFINE(HAVE_GETMNTENT), [
AC_CHECK_FUNC(mntctl, AC_DEFINE(HAVE_MNTCTL),[
AC_CHECK_FUNC(getmntinfo_r, AC_DEFINE(HAVE_GETMNTINFO_R), [
AC_CHECK_LIB(c_r, getmntinfo_r, [LIBS="$LIBS -lc_r";
AC_DEFINE(HAVE_GETMNTINFO_R)],
LIBOBJS="$LIBOBJS getmntent.o")])])])
AC_DEFINE(HAVE_GETMNTINFO_R)], [
AC_DEFINE([USE_GETMNTENT], 1, [Defined if getmntent replacement is used])
LIBOBJS="$LIBOBJS getmntent.o"])])])])
AC_CHECK_FUNC(lchown,
[__CHOWN_RHF="%{__chown} -Rhf"
@ -870,8 +899,17 @@ AC_MSG_RESULT($ROOT_GROUP)
AC_SUBST(ROOT_GROUP)
if test "x$varprefix" = "x"; then
varprefix=`echo $prefix | sed 's/usr/var/'`
test "x$prefix" = xNONE && varprefix=`echo $ac_default_prefix | sed 's/usr/var/'`
# For /usr and /usr/local, we want the 'var' directory to go
# in /var and /var/local respectively. For everything else,
# just put the 'var' directory in prefix/var.
case $prefix in
/usr | /usr/local )
varprefix=`echo $prefix | sed 's/usr/var/'` ;;
NONE)
varprefix=`echo $ac_default_prefix | sed 's/usr/var/'` ;;
*)
varprefix=$prefix/var ;;
esac
fi
AC_SUBST(varprefix)

View File

@ -13,7 +13,7 @@ pkginc_HEADERS = \
noinst_HEADERS = \
cpio.h depends.h falloc.h fprint.h fsm.h hash.h \
md5.h psm.h \
rpmdb.h rpmlead.h signature.h
rpmdb.h rpmlead.h scriptlet.h signature.h
mylibpaths = -L$(top_builddir)/lib/.libs -L$(top_builddir)/rpmio/.libs \
-L$(top_builddir)/popt/.libs

View File

@ -1424,7 +1424,7 @@ static struct badDeps_s {
{ "ypbind", "yp-tools" },
{ "ghostscript-fonts", "ghostscript" },
/* 7.1 only */
{ "mozilla-psm", "mozilla" },
{ "mozilla", "mozilla-psm" },
{ "arts", "kdelibs-sound" },
/* 7.0 only */
{ "pango-gtkbeta-devel", "pango-gtkbeta" },

View File

@ -96,19 +96,6 @@ exit:
return rc;
}
/*
* XXX gcc-2.96-60 on alpha (at least) needs ALPHA_LOSSAGE defined.
*
* Otherwise, the (mis-compilation?!) symptom is the inability to pass sig_type
* correctly to rpmReadSignature(FD_t *fd, Header *header, short sig_type)
* (Note: the short in both struct rpmlead and in the prototype).
*/
#ifdef __alpha
#define ALPHA_LOSSAGE
#else
#undef ALPHA_LOSSAGE
#endif
int rpmReSign(rpmResignFlags add, char *passPhrase, const char **argv)
{
FD_t fd = NULL;
@ -122,9 +109,6 @@ int rpmReSign(rpmResignFlags add, char *passPhrase, const char **argv)
int res = EXIT_FAILURE;
rpmRC rc;
#ifdef ALPHA_LOSSAGE
l = malloc(sizeof(*l));
#endif
tmprpm[0] = '\0';
while ((rpm = *argv++) != NULL) {
@ -219,7 +203,6 @@ l = malloc(sizeof(*l));
res = 0;
exit:
if (l != &lead) free(l);
if (fd) manageFile(&fd, NULL, 0, res);
if (ofd) manageFile(&ofd, NULL, 0, res);
@ -259,9 +242,6 @@ int rpmCheckSig(rpmCheckSigFlags flags, const char **argv)
int res = 0;
rpmRC rc;
#ifdef ALPHA_LOSSAGE
l = malloc(sizeof(*l));
#endif
while ((rpm = *argv++) != NULL) {
if (manageFile(&fd, &rpm, O_RDONLY, 0)) {
@ -472,7 +452,6 @@ l = malloc(sizeof(*l));
free((void *)sigtarget); sigtarget = NULL;
}
}
if (l != &lead) free(l);
return res;
}

View File

@ -1680,7 +1680,6 @@ int rpmdbRemove(rpmdb rpmdb, int rid, unsigned int hdrNum)
xx = dbiDel(dbi, dbcursor, &hdrNum, sizeof(hdrNum), 0);
xx = dbiCclose(dbi, dbcursor, 0);
dbcursor = NULL;
/* XXX HACK sync is on the bt with multiple db access */
if (!dbi->dbi_no_dbsync)
xx = dbiSync(dbi, 0);
continue;
@ -1714,14 +1713,43 @@ int rpmdbRemove(rpmdb rpmdb, int rid, unsigned int hdrNum)
const void * valp;
size_t vallen;
/* Identify value pointer and length. */
switch (rpmtype) {
case RPM_CHAR_TYPE:
case RPM_INT8_TYPE:
vallen = sizeof(RPM_CHAR_TYPE);
valp = rpmvals + i;
break;
case RPM_INT16_TYPE:
vallen = sizeof(int_16);
valp = rpmvals + i;
break;
case RPM_INT32_TYPE:
vallen = sizeof(int_32);
valp = rpmvals + i;
break;
case RPM_BIN_TYPE:
vallen = rpmcnt;
valp = rpmvals;
rpmcnt = 1; /* XXX break out of loop. */
break;
case RPM_STRING_TYPE:
case RPM_I18NSTRING_TYPE:
rpmcnt = 1; /* XXX break out of loop. */
/*@fallthrough@*/
case RPM_STRING_ARRAY_TYPE:
default:
vallen = strlen(rpmvals[i]);
valp = rpmvals[i];
break;
}
/*
* This is almost right, but, if there are duplicate tag
* values, there will be duplicate attempts to remove
* the header instance. It's easier to just ignore errors
* than to do things correctly.
*/
valp = rpmvals[i];
vallen = strlen(rpmvals[i]);
xx = removeIndexEntry(dbi, dbcursor, valp, vallen, rec);
}
@ -1978,14 +2006,42 @@ int rpmdbAdd(rpmdb rpmdb, int iid, Header h)
break;
}
valp = rpmvals[i];
vallen = strlen(rpmvals[i]);
/* Identify value pointer and length. */
switch (rpmtype) {
case RPM_CHAR_TYPE:
case RPM_INT8_TYPE:
vallen = sizeof(int_8);
valp = rpmvals + i;
break;
case RPM_INT16_TYPE:
vallen = sizeof(int_16);
valp = rpmvals + i;
break;
case RPM_INT32_TYPE:
vallen = sizeof(int_32);
valp = rpmvals + i;
break;
case RPM_BIN_TYPE:
vallen = rpmcnt;
valp = rpmvals;
rpmcnt = 1; /* XXX break out of loop. */
break;
case RPM_STRING_TYPE:
case RPM_I18NSTRING_TYPE:
rpmcnt = 1; /* XXX break out of loop. */
/*@fallthrough@*/
case RPM_STRING_ARRAY_TYPE:
default:
valp = rpmvals[i];
vallen = strlen(rpmvals[i]);
break;
}
rc += addIndexEntry(dbi, dbcursor, valp, vallen, rec);
}
xx = dbiCclose(dbi, dbcursor, 0);
dbcursor = NULL;
/* XXX HACK sync is on the bt with multiple db access */
if (!dbi->dbi_no_dbsync)
xx = dbiSync(dbi, 0);

View File

@ -52,7 +52,6 @@ static void printHash(const unsigned long amount, const unsigned long total)
#endif
fprintf(stdout, "#");
fflush(stdout);
hashesPrinted++;
}
fflush(stdout);
@ -69,6 +68,7 @@ static void printHash(const unsigned long amount, const unsigned long total)
fprintf (stdout, "\n");
#endif
}
fflush(stdout);
}
}
@ -120,20 +120,20 @@ static void * showProgress(const void * arg, const rpmCallbackType what,
s = headerSprintf(h, "%{NAME}-%{VERSION}-%{RELEASE}",
rpmTagTable, rpmHeaderFormats, NULL);
fprintf(stdout, "%s\n", s);
fflush(stdout);
}
free(s);
break;
case RPMCALLBACK_TRANS_PROGRESS:
case RPMCALLBACK_INST_PROGRESS:
if (flags & INSTALL_PERCENT) {
if (flags & INSTALL_PERCENT)
fprintf(stdout, "%%%% %f\n", (total
? ((float) ((((float) amount) / total) * 100))
: 100.0));
fflush(stdout);
} else if (flags & INSTALL_HASH) {
else if (flags & INSTALL_HASH)
printHash(amount, total);
}
fflush(stdout);
break;
case RPMCALLBACK_TRANS_START:
@ -144,12 +144,11 @@ static void * showProgress(const void * arg, const rpmCallbackType what,
#endif
if (!(flags & INSTALL_LABEL))
break;
if (flags & INSTALL_HASH) {
if (flags & INSTALL_HASH)
fprintf(stdout, "%-28s", _("Preparing..."));
fflush(stdout);
} else {
else
printf("%s\n", _("Preparing packages for installation..."));
}
fflush(stdout);
break;
case RPMCALLBACK_TRANS_STOP:

View File

@ -151,11 +151,6 @@ rpmRC rpmReadSignature(FD_t fd, Header * headerp, sigType sig_type)
if (headerp)
*headerp = NULL;
/* XXX Yuck, see ALPHA_LOSSAGE in lib/rpmchecksig.c */
#ifdef __alpha
if (sig_type == RPMSIGTYPE_NONE) sig_type = RPMSIGTYPE_HEADERSIG;
#endif
switch (sig_type) {
case RPMSIGTYPE_NONE:
rpmMessage(RPMMESS_DEBUG, _("No signature\n"));

2152
po/cs.po

File diff suppressed because it is too large Load Diff

2077
po/da.po

File diff suppressed because it is too large Load Diff

2126
po/de.po

File diff suppressed because it is too large Load Diff

1987
po/es.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

2122
po/fi.po

File diff suppressed because it is too large Load Diff

2060
po/fr.po

File diff suppressed because it is too large Load Diff

1987
po/gl.po

File diff suppressed because it is too large Load Diff

1987
po/hu.po

File diff suppressed because it is too large Load Diff

1987
po/id.po

File diff suppressed because it is too large Load Diff

2048
po/is.po

File diff suppressed because it is too large Load Diff

1987
po/it.po

File diff suppressed because it is too large Load Diff

2083
po/ja.po

File diff suppressed because it is too large Load Diff

1987
po/ko.po

File diff suppressed because it is too large Load Diff

2062
po/no.po

File diff suppressed because it is too large Load Diff

2140
po/pl.po

File diff suppressed because it is too large Load Diff

1995
po/pt.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1987
po/ro.po

File diff suppressed because it is too large Load Diff

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2001-02-15 15:44-0500\n"
"POT-Creation-Date: 2001-02-27 14:32-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -3081,67 +3081,67 @@ msgstr ""
msgid "%s: Fread failed: %s\n"
msgstr ""
#: lib/rpmchecksig.c:137 lib/rpmchecksig.c:273
#: lib/rpmchecksig.c:121 lib/rpmchecksig.c:253
#, c-format
msgid "%s: readLead failed\n"
msgstr ""
#: lib/rpmchecksig.c:142
#: lib/rpmchecksig.c:126
#, c-format
msgid "%s: Can't sign v1.0 RPM\n"
msgstr ""
#: lib/rpmchecksig.c:146
#: lib/rpmchecksig.c:130
#, c-format
msgid "%s: Can't re-sign v2.0 RPM\n"
msgstr ""
#: lib/rpmchecksig.c:155 lib/rpmchecksig.c:289
#: lib/rpmchecksig.c:139 lib/rpmchecksig.c:269
#, c-format
msgid "%s: rpmReadSignature failed\n"
msgstr ""
#: lib/rpmchecksig.c:159 lib/rpmchecksig.c:294
#: lib/rpmchecksig.c:143 lib/rpmchecksig.c:274
#, c-format
msgid "%s: No signature available\n"
msgstr ""
#: lib/rpmchecksig.c:192
#: lib/rpmchecksig.c:176
#, c-format
msgid "%s: writeLead failed: %s\n"
msgstr ""
#: lib/rpmchecksig.c:198
#: lib/rpmchecksig.c:182
#, c-format
msgid "%s: rpmWriteSignature failed: %s\n"
msgstr ""
#: lib/rpmchecksig.c:279
#: lib/rpmchecksig.c:259
#, c-format
msgid "%s: No signature available (v1.0 RPM)\n"
msgstr ""
#: lib/rpmchecksig.c:443
#: lib/rpmchecksig.c:423
msgid "NOT OK"
msgstr ""
#: lib/rpmchecksig.c:444 lib/rpmchecksig.c:458
#: lib/rpmchecksig.c:424 lib/rpmchecksig.c:438
msgid " (MISSING KEYS:"
msgstr ""
#: lib/rpmchecksig.c:446 lib/rpmchecksig.c:460
#: lib/rpmchecksig.c:426 lib/rpmchecksig.c:440
msgid ") "
msgstr ""
#: lib/rpmchecksig.c:447 lib/rpmchecksig.c:461
#: lib/rpmchecksig.c:427 lib/rpmchecksig.c:441
msgid " (UNTRUSTED KEYS:"
msgstr ""
#: lib/rpmchecksig.c:449 lib/rpmchecksig.c:463
#: lib/rpmchecksig.c:429 lib/rpmchecksig.c:443
msgid ")"
msgstr ""
#: lib/rpmchecksig.c:457
#: lib/rpmchecksig.c:437
msgid "OK"
msgstr ""
@ -3196,104 +3196,104 @@ msgstr ""
msgid "%s: cannot read header at 0x%x\n"
msgstr ""
#: lib/rpmdb.c:1699
#: lib/rpmdb.c:1698
#, c-format
msgid "removing \"%s\" from %s index.\n"
msgstr ""
#: lib/rpmdb.c:1708
#: lib/rpmdb.c:1707
#, c-format
msgid "removing %d entries from %s index.\n"
msgstr ""
#: lib/rpmdb.c:1862
#: lib/rpmdb.c:1923
#, c-format
msgid "error(%d) allocating new package instance\n"
msgstr ""
#: lib/rpmdb.c:1936
#: lib/rpmdb.c:1997
#, c-format
msgid "adding \"%s\" to %s index.\n"
msgstr ""
#: lib/rpmdb.c:1945
#: lib/rpmdb.c:2006
#, c-format
msgid "adding %d entries to %s index.\n"
msgstr ""
#: lib/rpmdb.c:2286
#: lib/rpmdb.c:2408
#, c-format
msgid "removing %s after successful db3 rebuild.\n"
msgstr ""
#: lib/rpmdb.c:2312
#: lib/rpmdb.c:2434
msgid "no dbpath has been set"
msgstr ""
#: lib/rpmdb.c:2337
#: lib/rpmdb.c:2459
#, c-format
msgid "rebuilding database %s into %s\n"
msgstr ""
#: lib/rpmdb.c:2341
#: lib/rpmdb.c:2463
#, c-format
msgid "temporary database %s already exists\n"
msgstr ""
#: lib/rpmdb.c:2347
#: lib/rpmdb.c:2469
#, c-format
msgid "creating directory %s\n"
msgstr ""
#: lib/rpmdb.c:2349
#: lib/rpmdb.c:2471
#, c-format
msgid "creating directory %s: %s\n"
msgstr ""
#: lib/rpmdb.c:2356
#: lib/rpmdb.c:2478
#, c-format
msgid "opening old database with dbapi %d\n"
msgstr ""
#: lib/rpmdb.c:2367
#: lib/rpmdb.c:2489
#, c-format
msgid "opening new database with dbapi %d\n"
msgstr ""
#: lib/rpmdb.c:2390
#: lib/rpmdb.c:2512
#, c-format
msgid "record number %d in database is bad -- skipping.\n"
msgstr ""
#: lib/rpmdb.c:2429
#: lib/rpmdb.c:2551
#, c-format
msgid "cannot add record originally at %d\n"
msgstr ""
#: lib/rpmdb.c:2447
#: lib/rpmdb.c:2569
msgid "failed to rebuild database: original database remains in place\n"
msgstr ""
#: lib/rpmdb.c:2455
#: lib/rpmdb.c:2577
msgid "failed to replace old database with new database!\n"
msgstr ""
#: lib/rpmdb.c:2457
#: lib/rpmdb.c:2579
#, c-format
msgid "replace files in %s with files from %s to recover"
msgstr ""
#: lib/rpmdb.c:2467
#: lib/rpmdb.c:2589
#, c-format
msgid "removing directory %s\n"
msgstr ""
#: lib/rpmdb.c:2469
#: lib/rpmdb.c:2591
#, c-format
msgid "failed to remove directory %s: %s\n"
msgstr ""
#: lib/rpminstall.c:147
#: lib/rpminstall.c:148
msgid "Preparing..."
msgstr ""
@ -3532,107 +3532,107 @@ msgstr ""
msgid " Actual size: %12d\n"
msgstr ""
#: lib/signature.c:161
#: lib/signature.c:156
msgid "No signature\n"
msgstr ""
#: lib/signature.c:165
#: lib/signature.c:160
msgid "Old PGP signature\n"
msgstr ""
#: lib/signature.c:176
#: lib/signature.c:171
msgid "Old (internal-only) signature! How did you get that!?\n"
msgstr ""
#: lib/signature.c:230
#: lib/signature.c:225
#, c-format
msgid "Signature: size(%d)+pad(%d)\n"
msgstr ""
#: lib/signature.c:289
#: lib/signature.c:284
#, c-format
msgid "Couldn't exec pgp (%s)\n"
msgstr ""
#: lib/signature.c:300
#: lib/signature.c:295
msgid "pgp failed\n"
msgstr ""
#. PGP failed to write signature
#. Just in case
#: lib/signature.c:307
#: lib/signature.c:302
msgid "pgp failed to write signature\n"
msgstr ""
#: lib/signature.c:312
#: lib/signature.c:307
#, c-format
msgid "PGP sig size: %d\n"
msgstr ""
#: lib/signature.c:323 lib/signature.c:400
#: lib/signature.c:318 lib/signature.c:395
msgid "unable to read the signature\n"
msgstr ""
#: lib/signature.c:328
#: lib/signature.c:323
#, c-format
msgid "Got %d bytes of PGP sig\n"
msgstr ""
#: lib/signature.c:366 lib/signature.c:712
#: lib/signature.c:361 lib/signature.c:707
msgid "Couldn't exec gpg\n"
msgstr ""
#: lib/signature.c:377
#: lib/signature.c:372
msgid "gpg failed\n"
msgstr ""
#. GPG failed to write signature
#. Just in case
#: lib/signature.c:384
#: lib/signature.c:379
msgid "gpg failed to write signature\n"
msgstr ""
#: lib/signature.c:389
#: lib/signature.c:384
#, c-format
msgid "GPG sig size: %d\n"
msgstr ""
#: lib/signature.c:405
#: lib/signature.c:400
#, c-format
msgid "Got %d bytes of GPG sig\n"
msgstr ""
#: lib/signature.c:433
#: lib/signature.c:428
msgid "Generating signature using PGP.\n"
msgstr ""
#: lib/signature.c:439
#: lib/signature.c:434
msgid "Generating signature using GPG.\n"
msgstr ""
#: lib/signature.c:519 lib/signature.c:580
#: lib/signature.c:514 lib/signature.c:575
msgid "Could not run pgp. Use --nopgp to skip PGP checks.\n"
msgstr ""
#: lib/signature.c:653
#: lib/signature.c:648
msgid "Could not run gpg. Use --nogpg to skip GPG checks.\n"
msgstr ""
#: lib/signature.c:741
#: lib/signature.c:736
msgid "Couldn't exec pgp\n"
msgstr ""
#. @notreached@
#. This case should have been screened out long ago.
#: lib/signature.c:745 lib/signature.c:798
#: lib/signature.c:740 lib/signature.c:793
msgid "Invalid %%_signature spec in macro file\n"
msgstr ""
#: lib/signature.c:778
#: lib/signature.c:773
msgid "You must set \"%%_gpg_name\" in your macro file\n"
msgstr ""
#: lib/signature.c:790
#: lib/signature.c:785
msgid "You must set \"%%_pgp_name\" in your macro file\n"
msgstr ""

2125
po/ru.po

File diff suppressed because it is too large Load Diff

2147
po/sk.po

File diff suppressed because it is too large Load Diff

2161
po/sl.po

File diff suppressed because it is too large Load Diff

2097
po/sr.po

File diff suppressed because it is too large Load Diff

2145
po/sv.po

File diff suppressed because it is too large Load Diff

2122
po/tr.po

File diff suppressed because it is too large Load Diff

1987
po/uk.po

File diff suppressed because it is too large Load Diff

1987
po/wa.po

File diff suppressed because it is too large Load Diff

1987
po/zh.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-08-23 22:24+0100\n"
"Last-Translator: Milan Kerslager <milan.kerslager@spsselib.hiedu.cz>\n"
"Language-Team: Czech <cs@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-03-07 05:17+01:00\n"
"Last-Translator: K. Christiansen <kenneth@gnu.org>\n"
"Language-Team: Danish/Dansk <dansk@klid.dk>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -10,7 +10,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-01-06 20:31+0100\n"
"Last-Translator: Jesús Bravo Álvarez <jba@pobox.com>\n"
"Language-Team: Galician <gpul-traduccion@ceu.fi.udc.es>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-08-03 23:26+0200\n"
"Last-Translator: László Németh <nemeth@qwertynet.hu>\n"
"Language-Team: Hungarian\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-06-16 02:12+0000\n"
"Last-Translator: Richard Allen <ra@hp.is>\n"
"Language-Team: is <kde-isl@mmedia.is>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-06-21 16:11+02:00\n"
"Last-Translator: Kjartan Maraas <kmaraas@online.no>\n"
"Language-Team: Norwegian <no@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"POT-Creation-Date: 2001-02-22 17:41-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -95,10 +95,10 @@ msgstr ""
msgid "ARG"
msgstr ""
#: popthelp.c:240
#: popthelp.c:241
msgid "Usage:"
msgstr ""
#: popthelp.c:259
#: popthelp.c:260
msgid "[OPTION...]"
msgstr ""

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-06-22 01:02+01:00\n"
"Last-Translator: Pedro Morais <morais@kde.org>\n"
"Language-Team: pt <morais@kde.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-06-14 23:23+EST\n"
"Last-Translator: Cristian Gafton <gafton@redhat.com>\n"
"Language-Team: Romanian <ro@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-08-13 21:00+0300\n"
"Last-Translator: Leon Kanter <leon@blackcatlinux.com>\n"
"Language-Team: Black Cat Linux Team <blackcat-support@blackcatlinux.com>\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 1999-08-04 21:40+0200\n"
"Last-Translator: Stanislav Meduna <stano@eunet.sk>\n"
"Language-Team: Slovak <sk-i18n@rak.isternet.sk>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-09-05 12:30+0200\n"
"Last-Translator: Roman Maurer <roman.maurer@hermes.si>\n"
"Language-Team: Slovenian <sl@li.org>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-06-20 00:07+0200\n"
"Last-Translator: Christian Rose <menthos@menthos.com>\n"
"Language-Team: Swedish <sv@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 2000-01-06 13:01+0100\n"
"Last-Translator: Görkem Çetin <kabalak@gmx.net>\n"
"Language-Team: Gelecek A.Þ <gorkem@gelecek.com.tr>\n"

View File

@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 1999-09-30 16:54+0200\n"
"Last-Translator: Yuri Syrota <rasta@renome.rovno.ua>\n"
"Language-Team: Ukrainian <uk@li.org>\n"

View File

@ -9,7 +9,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 1999-03-18 23:11+0100\n"
"Last-Translator: Nobody yet\n"
"Language-Team: walon <linux-wa@chanae.alphanet.ch>\n"

View File

@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,7 +1,7 @@
msgid ""
msgstr ""
"Project-Id-Version: popt 1.6.1\n"
"POT-Creation-Date: 2001-01-16 08:53-0500\n"
"POT-Creation-Date: 2001-02-09 10:46-0500\n"
"PO-Revision-Date: 1999-11-11 05:04+0800\n"
"Last-Translator: Dillion Chen <dillon.chen@turbolinux.com.cn>\n"
"Language-Team: TLDN\n"

View File

@ -78,31 +78,34 @@ static void singleOptionHelp(FILE * f, int maxLeftCol,
const char * argDescrip = getArgDescrip(opt, translation_domain);
int helpLength;
char * left;
int nb = maxLeftCol + 1;
left = malloc(maxLeftCol + 1);
/* Make sure there's more than enough room in target buffer. */
if (opt->longName) nb += strlen(opt->longName);
if (argDescrip) nb += strlen(argDescrip);
left = malloc(nb);
left[0] = left[maxLeftCol] = '\0';
if (opt->longName && opt->shortName)
snprintf(left, maxLeftCol, "-%c, %s%s", opt->shortName,
sprintf(left, "-%c, %s%s", opt->shortName,
((opt->argInfo & POPT_ARGFLAG_ONEDASH) ? "-" : "--"),
opt->longName);
else if (opt->shortName)
snprintf(left, maxLeftCol, "-%c", opt->shortName);
sprintf(left, "-%c", opt->shortName);
else if (opt->longName)
snprintf(left, maxLeftCol, "%s%s",
sprintf(left, "%s%s",
((opt->argInfo & POPT_ARGFLAG_ONEDASH) ? "-" : "--"),
opt->longName);
if (!*left) return ;
if (!*left) goto out;
if (argDescrip) {
char * le = left + strlen(left);
int nl = maxLeftCol - (le - left);
if (opt->argInfo & POPT_ARGFLAG_OPTIONAL) {
*le++ = '['; nl--;
}
if (opt->argInfo & POPT_ARGFLAG_OPTIONAL)
*le++ = '[';
if (opt->argDescrip == NULL) {
switch (opt->argInfo & POPT_ARG_MASK) {
case POPT_ARG_NONE:
snprintf(le, nl-1, "[true]");
sprintf(le, "[true]");
break;
case POPT_ARG_VAL:
{ long aLong = opt->val;
@ -110,14 +113,14 @@ static void singleOptionHelp(FILE * f, int maxLeftCol,
if (opt->argInfo & POPT_ARGFLAG_NOT) aLong = ~aLong;
switch (opt->argInfo & POPT_ARGFLAG_LOGICALOPS) {
case POPT_ARGFLAG_OR:
snprintf(le, nl-1, "[|=0x%lx]", aLong); break;
sprintf(le, "[|=0x%lx]", aLong); break;
case POPT_ARGFLAG_AND:
snprintf(le, nl-1, "[&=0x%lx]", aLong); break;
sprintf(le, "[&=0x%lx]", aLong); break;
case POPT_ARGFLAG_XOR:
snprintf(le, nl-1, "[^=0x%lx]", aLong); break;
sprintf(le, "[^=0x%lx]", aLong); break;
default:
if (!(aLong == 0L || aLong == 1L || aLong == -1L))
snprintf(le, nl-1, "[=%ld]", aLong);
sprintf(le, "[=%ld]", aLong);
break;
}
} break;
@ -126,17 +129,15 @@ static void singleOptionHelp(FILE * f, int maxLeftCol,
case POPT_ARG_STRING:
case POPT_ARG_FLOAT:
case POPT_ARG_DOUBLE:
snprintf(le, nl-1, "=%s", argDescrip);
sprintf(le, "=%s", argDescrip);
break;
}
} else {
snprintf(le, nl-1, "=%s", argDescrip);
sprintf(le, "=%s", argDescrip);
}
nl -= strlen(le);
le += strlen(le);
if (opt->argInfo & POPT_ARGFLAG_OPTIONAL) {
*le++ = ']'; nl--;
}
if (opt->argInfo & POPT_ARGFLAG_OPTIONAL)
*le++ = ']';
*le = '\0';
}

View File

@ -1923,6 +1923,98 @@ static PyObject * rpmHeaderFromFile(PyObject * self, PyObject * args) {
return list;
}
/** \ingroup python
* This assumes the order of list matches the order of the new headers, and
* throws an exception if that isn't true.
*/
static int rpmMergeHeaders(PyObject * list, FD_t fd, int matchTag) {
Header newH;
HeaderIterator iter;
int_32 * newMatch, * oldMatch;
hdrObject * ho;
int count = 0;
int type, c, tag;
void * p;
Py_BEGIN_ALLOW_THREADS
newH = headerRead(fd, HEADER_MAGIC_YES);
Py_END_ALLOW_THREADS
while (newH) {
if (!headerGetEntry(newH, matchTag, NULL, (void **) &newMatch, NULL)) {
PyErr_SetString(pyrpmError, "match tag missing in new header");
return 1;
}
ho = (hdrObject *) PyList_GetItem(list, count++);
if (!ho) return 1;
if (!headerGetEntry(ho->h, matchTag, NULL, (void **) &oldMatch, NULL)) {
PyErr_SetString(pyrpmError, "match tag missing in new header");
return 1;
}
if (*newMatch != *oldMatch) {
PyErr_SetString(pyrpmError, "match tag mismatch");
return 1;
}
if (ho->sigs) headerFree(ho->sigs);
if (ho->md5list) free(ho->md5list);
if (ho->fileList) free(ho->fileList);
if (ho->linkList) free(ho->linkList);
ho->sigs = NULL;
ho->md5list = NULL;
ho->fileList = NULL;
ho->linkList = NULL;
iter = headerInitIterator(newH);
while (headerNextIterator(iter, &tag, &type, (void *) &p, &c)) {
/* could be dupes */
headerRemoveEntry(ho->h, tag);
headerAddEntry(ho->h, tag, type, p, c);
headerFreeData(p, type);
}
headerFreeIterator(iter);
Py_BEGIN_ALLOW_THREADS
newH = headerRead(fd, HEADER_MAGIC_YES);
Py_END_ALLOW_THREADS
}
return 0;
}
static PyObject * rpmMergeHeadersFromFD(PyObject * self, PyObject * args) {
FD_t fd;
int fileno;
PyObject * list;
int rc;
int matchTag;
if (!PyArg_ParseTuple(args, "Oii", &list, &fileno, &matchTag)) return NULL;
if (!PyList_Check(list)) {
PyErr_SetString(PyExc_TypeError, "first parameter must be a list");
return NULL;
}
fd = fdDup(fileno);
rc = rpmMergeHeaders (list, fd, matchTag);
Fclose(fd);
if (rc) {
return NULL;
}
Py_INCREF(Py_None);
return Py_None;
}
/** \ingroup python
*/
static PyObject * errorCB = NULL, * errorData = NULL;

View File

@ -22,6 +22,10 @@
#include "misc/putenv.c"
#endif
#if defined(USE_GETMNTENT)
#include "misc/getmntent.c"
#endif
#if !defined(HAVE_REALPATH)
#include "misc/realpath.c"
#endif

View File

@ -1,4 +1,4 @@
# $Id: rpmrc.in,v 2.33 2000/12/12 20:03:45 jbj Exp $
# $Id: rpmrc.in,v 2.34 2001/02/27 21:30:27 jbj Exp $
#
# This is a global RPM configuration file. All changes made here will
# be lost when the rpm package is upgraded. Any per-system configuration
@ -112,7 +112,7 @@ os_canon: FreeBSD: FreeBSD 8
os_canon: SCO_SV: SCO_SV3.2v5.0.2 9
os_canon: IRIX64: Irix64 10
os_canon: NEXTSTEP: NextStep 11
os_canon: BSD/OS: BSD_OS 12
os_canon: BSD_OS: bsdi 12
os_canon: machten: machten 13
os_canon: CYGWIN32_NT: cygwin32 14
os_canon: CYGWIN32_95: cygwin32 15
@ -247,6 +247,9 @@ os_compat: MiNT: FreeMiNT mint TOS
os_compat: mint: FreeMiNT MiNT TOS
os_compat: TOS: FreeMiNT MiNT mint
os_compat: BSD_OS: bsdi
os_compat: bsdi4.0: bsdi
buildarch_compat: ia64: noarch
buildarch_compat: athlon: i686