]> git.saurik.com Git - apt.git/log
apt.git
11 years agouse mkstemp instead of mkostemp in FileFd::Open()
David Kalnischkies [Tue, 27 Aug 2013 19:50:22 +0000 (21:50 +0200)] 
use mkstemp instead of mkostemp in FileFd::Open()

FileFd currently supports no fileflags which would make sense to provide
via mkostemp, so we can just use mkstemp here which is a standard
function compared to glib extension mkostemp.

O_CREAT (Create) and O_TRUNC (Empty) are implied by O_EXCL, which is the
mode mkstemp uses by default. The file description is opened ReadWrite,
but that used to be the default for FileFd in the old times and not a
problem as the difference is needed by FileFd to decide in which way the
compressor pipeline needs to be created (if any).

Git-Dch: Ignore

11 years agoreplace usage of potential dangerous mktemp with mkstemp
Angel Guzman Maeso [Tue, 27 Aug 2013 19:29:01 +0000 (21:29 +0200)] 
replace usage of potential dangerous mktemp with mkstemp

Avoid the warning "the use of `mktemp' is dangerous,
better use `mkstemp' or `mkdtemp'". It is not strictly necessary to
change the usage from a security point of view here, but mktemp is
also removed from the standard since POSIX.1-2008.

The mkostemp call returns a file descriptor the logic for
TemporaryFileName has been changed accordingly to get the same results.
The file permissions are corrected by using fchmod() as the default for
FileFd is 666 while mkstemp creates files with 600 by default.

11 years agoupdate changelog
Michael Vogt [Mon, 26 Aug 2013 16:52:13 +0000 (18:52 +0200)] 
update changelog

11 years agoapt-private/private-cmndline.cc: fix typo: s/deselect-upgrade/dselect-upgrade/
Michael Vogt [Mon, 26 Aug 2013 16:52:06 +0000 (18:52 +0200)] 
apt-private/private-cmndline.cc: fix typo: s/deselect-upgrade/dselect-upgrade/

11 years agodselect/install: add new DSELECT_UPGRADE_OPTS="-f"
Michael Vogt [Mon, 26 Aug 2013 16:51:40 +0000 (18:51 +0200)] 
dselect/install: add new DSELECT_UPGRADE_OPTS="-f"

11 years agodselect/install:
Michael Vogt [Mon, 26 Aug 2013 16:45:32 +0000 (18:45 +0200)] 
dselect/install:

* dselect/install:
 - remove "-f" option for apt-get dselect-upgrade (closes: #720532)

11 years agoMerge branch 'debian/sid' of ssh://git.debian.org/git/apt/apt into debian/sid
Michael Vogt [Mon, 26 Aug 2013 16:42:58 +0000 (18:42 +0200)] 
Merge branch 'debian/sid' of ssh://git.debian.org/git/apt/apt into debian/sid

Conflicts:
debian/changelog

11 years agoChangelog entry for Vietnamese translation
Christian PERRIER [Sun, 25 Aug 2013 13:40:44 +0000 (15:40 +0200)] 
Changelog entry for Vietnamese translation

11 years agoUpdate Vietnamese translation to 0.9.11
Tran Ngoc Quan [Sun, 25 Aug 2013 07:20:31 +0000 (14:20 +0700)] 
Update Vietnamese translation to 0.9.11

Signed-off-by: Tran Ngoc Quan <vnwildman@gmail.com>
11 years agoupdate changelog for update 0.9.11.1
Michael Vogt [Sat, 24 Aug 2013 07:13:57 +0000 (09:13 +0200)] 
update changelog for update

11 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/sid
Michael Vogt [Sat, 24 Aug 2013 07:07:37 +0000 (09:07 +0200)] 
Merge remote-tracking branch 'mvo/debian/sid' into debian/sid

11 years agodselect/update: remove "-f" option as its not being used in the context of apt-get...
Michael Vogt [Fri, 23 Aug 2013 11:44:21 +0000 (13:44 +0200)] 
dselect/update: remove "-f" option as its not being used in the context of apt-get update

11 years agoftparchive/override.cc: fix "skip empty lines" code, the pointer needs to get de...
Michael Vogt [Fri, 23 Aug 2013 07:15:00 +0000 (09:15 +0200)] 
ftparchive/override.cc: fix "skip empty lines" code, the pointer needs to get de-referenced first

11 years agoMerge branch 'debian/sid' of ssh://git.debian.org/git/apt/apt into debian/sid
Michael Vogt [Thu, 22 Aug 2013 21:00:31 +0000 (23:00 +0200)] 
Merge branch 'debian/sid' of ssh://git.debian.org/git/apt/apt into debian/sid

11 years agodo chdir("/") after chroot()
Michael Vogt [Thu, 22 Aug 2013 20:30:20 +0000 (22:30 +0200)] 
do chdir("/") after chroot()

11 years agoMerge remote-tracking branch 'donkult/debian/sid' into debian/sid
Michael Vogt [Thu, 22 Aug 2013 20:26:05 +0000 (22:26 +0200)] 
Merge remote-tracking branch 'donkult/debian/sid' into debian/sid

11 years agoapt-pkg:contrib Avoid compiler warning about sign-compare
Ángel Guzmán Maeso [Wed, 21 Aug 2013 17:38:35 +0000 (19:38 +0200)] 
apt-pkg:contrib Avoid compiler warning about sign-compare

The fix avoid the warning "comparison between signed and
unsigned integer expressions [-Wsign-compare]"· The index for the loop needs
to be unsigned for compare with globbuf.gl_pathc structure
member

11 years agoMerge remote-tracking branch 'mvo/bugfix/coverity' into debian/sid
Michael Vogt [Thu, 22 Aug 2013 20:24:27 +0000 (22:24 +0200)] 
Merge remote-tracking branch 'mvo/bugfix/coverity' into debian/sid

Conflicts:
apt-pkg/tagfile.h

11 years agoMerge remote-tracking branch 'mvo/debian/sid' into debian/sid
Michael Vogt [Thu, 22 Aug 2013 20:23:04 +0000 (22:23 +0200)] 
Merge remote-tracking branch 'mvo/debian/sid' into debian/sid

11 years agofix compiler warning about sign-compare
Angel Guzman Maeso [Thu, 22 Aug 2013 14:54:20 +0000 (16:54 +0200)] 
fix compiler warning about sign-compare

This fix avoids the warning "comparison between signed and unsigned
integer expressions [-Wsign-compare]". The index for the loop
needs to be unsigned for compare with globbuf.gl_pathc structure
member.

11 years agoadd versions to manpages-it Replaces+Breaks
David Kalnischkies [Thu, 22 Aug 2013 14:46:43 +0000 (16:46 +0200)] 
add versions to manpages-it Replaces+Breaks

In the meantime the package was updated to remove the old APT manpages
from this package, so we can now add a Breaks and version it, too.

The intial Replaces was added in:
b57220d815aedbc023847d0885e08c6ed50e629a

11 years agoadd a breaks libapt-inst for FileFd changes in 0.9.9
David Kalnischkies [Thu, 22 Aug 2013 14:36:31 +0000 (16:36 +0200)] 
add a breaks libapt-inst for FileFd changes in 0.9.9

Partial upgrades…

The fix for 704608 assumes that bf35c19b817cc1474b3deabce0b0953c248bad42
was applied to libapt-inst which isn't the case for partial upgrades of
course, so break it to ensure that it is the case.

Closes: 720449
11 years agoprepare unstable upload 0.9.11
Michael Vogt [Wed, 21 Aug 2013 15:59:30 +0000 (17:59 +0200)] 
prepare unstable upload

11 years agofix incorrect bugnumber for the Pre-Install-Pkgs hook (Closes: #671726)
Michael Vogt [Mon, 19 Aug 2013 13:54:23 +0000 (15:54 +0200)] 
fix incorrect bugnumber for the Pre-Install-Pkgs hook (Closes: #671726)

11 years agoadd lintian override for no-shlibs-control-file and only install libapt-private.so...
Michael Vogt [Mon, 19 Aug 2013 12:59:29 +0000 (14:59 +0200)] 
add lintian override for no-shlibs-control-file and only install libapt-private.so.* instead libapt-private.so

11 years agoMerge pull request #3 from cbaines/debian/sid
Michael Vogt [Mon, 19 Aug 2013 12:39:55 +0000 (05:39 -0700)] 
Merge pull request #3 from cbaines/debian/sid

Add test for bug 507998

11 years agoprepare for release
Michael Vogt [Mon, 19 Aug 2013 09:00:44 +0000 (11:00 +0200)] 
prepare for release

11 years agoupdate changelog
Michael Vogt [Sat, 17 Aug 2013 08:03:02 +0000 (10:03 +0200)] 
update changelog

11 years agoMerge remote-tracking branch 'mvo/feature/apt-binary2' into debian/sid
Michael Vogt [Sat, 17 Aug 2013 07:18:36 +0000 (09:18 +0200)] 
Merge remote-tracking branch 'mvo/feature/apt-binary2' into debian/sid

Conflicts:
cmdline/apt-get.cc

11 years agoMerge remote-tracking branch 'donkult/debian/sid' into debian/sid
Michael Vogt [Sat, 17 Aug 2013 06:38:09 +0000 (08:38 +0200)] 
Merge remote-tracking branch 'donkult/debian/sid' into debian/sid

11 years agoMerge branch 'debian/sid' of git://git.debian.org/git/apt/apt into debian/sid
Christian PERRIER [Sat, 17 Aug 2013 05:58:13 +0000 (07:58 +0200)] 
Merge branch 'debian/sid' of git://git.debian.org/git/apt/apt into debian/sid

11 years agoFrench translation update.
Christian PERRIER [Sat, 17 Aug 2013 05:58:02 +0000 (07:58 +0200)] 
French translation update.

11 years agoAdd test for bug 507998
Christopher Baines [Fri, 16 Aug 2013 10:44:00 +0000 (12:44 +0200)] 
Add test for bug 507998

11 years agoallow Pre-Install-Pkgs hooks to get info over an FD != stdin
David Kalnischkies [Tue, 13 Aug 2013 16:18:15 +0000 (18:18 +0200)] 
allow Pre-Install-Pkgs hooks to get info over an FD != stdin

This adds ::InfoFD option alongside the ::Version one to request sending
the information to the specified FD, by default it is STDIN as it was
the case before.

The environment variable APT_HOOK_INFO_FD contains the FD the data is on as
a confirmation that the APT version used understood the request.

Allowing the hook to choose the FD is needed/helpful e.g. for shellscripts
which have a hard time accessing FDs above 9 (as >= 10 are usually used
 internally by them)

Closes: #671728
11 years agouse malloc instead of new[] in pkgTagFile
David Kalnischkies [Thu, 15 Aug 2013 15:26:30 +0000 (17:26 +0200)] 
use malloc instead of new[] in pkgTagFile

We don't need initialized memory for pkgTagFile, but more to the point
we can use realloc this way which hides the bloody details of increasing
the size of the buffer used.

Git-Dch: Ignore

11 years agoensure that pkgTagFile isn't writing past Buffer length
David Kalnischkies [Thu, 15 Aug 2013 14:49:51 +0000 (16:49 +0200)] 
ensure that pkgTagFile isn't writing past Buffer length

In 91c4cc14d3654636edf997d23852f05ad3de4853 I removed the +256 from
the pkgTagFile call parsing Release files as I couldn't find a
mentioning of a reason for why and it was marked as XXX which suggested
that at least someone else was suspicious.

It turns out that it is indeed "documented", it just didn't found it at
first but the changelog of apt 0.6.6 (29. Dec 2003) mentions:
  * Restore the ugly hack I removed from indexRecords::Load which set the
    pkgTagFile buffer size to (file size)+256.  This is concealing a bug,
    but I can't fix it right now.  This should fix the segfaults that
    folks are seeing with 0.6.[45].

The bug it is "hiding" is that if pkgTagFile works with a file which doesn't
end in a double newline it will be adding it without checking if the Buffer
is big enough to store them. Its also not a good idea to let the End
pointer be past the end of our space, even if we don't access the data.

Closes: 719629
11 years agoset MALLOC_CHECK_ and MALLOC_PERTURB_ for testcases
David Kalnischkies [Thu, 15 Aug 2013 14:45:09 +0000 (16:45 +0200)] 
set MALLOC_CHECK_ and MALLOC_PERTURB_ for testcases

In bugreport deb:719629 Paul Wise mentions both to enable some malloc
checks and as more testing can't hurt we enable both for all testcases.

Git-Dch: Ignore

11 years agorework the parameter creation for the Hashsum test
David Kalnischkies [Thu, 15 Aug 2013 14:41:16 +0000 (16:41 +0200)] 
rework the parameter creation for the Hashsum test

Avoids having to different places from which test binaries are called

Git-Dch: Ignore

11 years agodo not call make from libapt/run-tests if its called by make
David Kalnischkies [Thu, 15 Aug 2013 14:36:32 +0000 (16:36 +0200)] 
do not call make from libapt/run-tests if its called by make

If we are called by make everything is build already and
so this is just a noise nop we can just skip.
(Noisy as it complains about being unable to communicate with
 the other makes to coordinate with the jobserver)

Git-Dch: Ignore

11 years agoinit the pkgTagFile with the size of the Release file
David Kalnischkies [Tue, 13 Aug 2013 19:46:32 +0000 (21:46 +0200)] 
init the pkgTagFile with the size of the Release file

Release files are basically one big Section, so we might safe some
Resize circles by starting with the filesize.

Git-Dch: Ignore

11 years agoadd PACKAGE_MATCHER_ABI_COMPAT mode for now so that this branch can be merged without...
Michael Vogt [Thu, 15 Aug 2013 11:39:32 +0000 (13:39 +0200)] 
add PACKAGE_MATCHER_ABI_COMPAT mode for now so that this branch can be merged without breaking ABI

11 years ago* lp:~mvo/apt/add-glob-function:
Michael Vogt [Wed, 17 Oct 2012 08:27:50 +0000 (10:27 +0200)] 
* lp:~mvo/apt/add-glob-function:
  -  add Glob() to fileutl.{cc,h}
Conflicts:
apt-pkg/contrib/fileutl.h
debian/changelog

11 years ago* lp:~mvo/apt/config-clear:
Michael Vogt [Wed, 17 Oct 2012 08:29:52 +0000 (10:29 +0200)] 
* lp:~mvo/apt/config-clear:
  - support Configuration.Clear() for a clear of the entire
    configuration
Conflicts:
debian/changelog

11 years agomerge patch from Daniel Hartwig to Show a error message if {,dist-}upgrade is used...
Michael Vogt [Tue, 23 Apr 2013 06:16:21 +0000 (08:16 +0200)] 
merge patch from Daniel Hartwig to  Show a error message if {,dist-}upgrade is used with additional
    arguments (closes: #705510)

11 years agomerge patch from Daniel Hartwig to Clarify units of Acquire::http::Dl-Limit (closes...
Michael Vogt [Tue, 23 Apr 2013 06:15:06 +0000 (08:15 +0200)] 
merge patch from Daniel Hartwig to  Clarify units of Acquire::http::Dl-Limit (closes: #705445)
Conflicts:
debian/changelog

11 years agomake destructors virtual
Michael Vogt [Thu, 15 Aug 2013 07:04:25 +0000 (09:04 +0200)] 
make destructors virtual

11 years agoreally build apt.install
Michael Vogt [Mon, 12 Aug 2013 21:59:44 +0000 (23:59 +0200)] 
really build apt.install

11 years agoinstall libapt-private* into the apt binary
Michael Vogt [Mon, 12 Aug 2013 21:42:35 +0000 (23:42 +0200)] 
install libapt-private* into the apt binary

11 years agoMerge remote-tracking branch 'upstream/debian/sid' into feature/apt-binary2
Michael Vogt [Mon, 12 Aug 2013 21:35:21 +0000 (23:35 +0200)] 
Merge remote-tracking branch 'upstream/debian/sid' into feature/apt-binary2

11 years agofix typo in the test for abi-compliance-checker
Michael Vogt [Mon, 12 Aug 2013 21:33:57 +0000 (23:33 +0200)] 
fix typo in the test for abi-compliance-checker

11 years agosquash merge of the feature/apt-binary branch without the changes from experimental
Michael Vogt [Mon, 12 Aug 2013 21:24:08 +0000 (23:24 +0200)] 
squash merge of the feature/apt-binary branch without the changes from experimental

11 years agoupdate changelog for upload 0.9.10
Michael Vogt [Mon, 12 Aug 2013 19:45:59 +0000 (21:45 +0200)] 
update changelog for upload

11 years agodo not call 'apt-key update' in apt.postinst
David Kalnischkies [Mon, 12 Aug 2013 15:26:54 +0000 (17:26 +0200)] 
do not call 'apt-key update' in apt.postinst

The debian-archive-keyring package ships trusted.gpg.d fragment files
for a while now and dropped their call to 'apt-key update', so there is
no need for use to call it as the keys will always be available.

This also finally allows a user to remove key(ring)s without APT to
overriding this decision by readding them with this step.

The functionality is kept around in the odd case that an old
debian-archive-keyring package is used which still calls 'apt-key
update' and depends on the import (hence, we also do not enforce a newer
version of the debian-archive-keyring via our dependencies)

11 years agolet apt-key del work better with softlink and single key keyrings
David Kalnischkies [Mon, 12 Aug 2013 14:19:37 +0000 (16:19 +0200)] 
let apt-key del work better with softlink and single key keyrings

Having fragement files means there is a good chance that there is one
key per keyring, so deal with that as well as with setups in which
keyrings are linked into trusted.gpg.d as we can't just modify those
files (they might be in /usr for example).

11 years agoensure that testcases exiting because of set -e aren't successful
David Kalnischkies [Mon, 12 Aug 2013 13:51:42 +0000 (15:51 +0200)] 
ensure that testcases exiting because of set -e aren't successful

Git-Dch: Ignore

11 years agomake the keyring locations in apt-key configurable
David Kalnischkies [Sun, 11 Aug 2013 22:36:52 +0000 (00:36 +0200)] 
make the keyring locations in apt-key configurable

Might come in handy for more than just a simple testcase.

11 years agodo not double-slash paths in apt-key
David Kalnischkies [Sun, 11 Aug 2013 22:33:37 +0000 (00:33 +0200)] 
do not double-slash paths in apt-key

Closes: 665411
11 years agouse a tmpfile for trustdb.gpg in apt-key
David Kalnischkies [Sun, 11 Aug 2013 22:19:10 +0000 (00:19 +0200)] 
use a tmpfile for trustdb.gpg in apt-key

for some "interesting" reason gpg decides that it needs to update its
trustdb.gpg file in a --list-keys command even if right before gpg is
asked to --check-trustdb. That wouldn't be as bad if it wouldn't modify
the keyring being listed at that moment as well, which generates not
only warnings which are not a problem for us, but as the keyring
modified can be in /usr it modified files which aren't allowed to be
modified.

The suggested solution in the bugreport is running --check-trustdb
unconditionally in an 'apt-key update' call, but this command will not
be used in the future and this could still potentially bite us in
net-update or adv calls. All of this just to keep a file around, which
we do not need…

The commit therefore switches to the use of a temporary created
trusted.gpg file for everyone and asks gpg to not try to update the
trustdb after its intial creation, which seems to avoid the problem
altogether.

It is using your also faked secring btw as calling the check-trustdb
without a keyring is a lot slower …

Closes: #687611
Thanks: Andreas Beckmann for the initial patch!

11 years agoalways use our own trustdb.gpg in apt-key
David Kalnischkies [Thu, 11 Jul 2013 18:07:22 +0000 (20:07 +0200)] 
always use our own trustdb.gpg in apt-key

APT doesn't care for the trustdb.gpg, but gnupg requires one even for
the simplest commands, so we either use the one root has available in
/etc or if we don't have access to it (as only root can read that file)
we create a temporary directory to store a trustdb.gpg in it.

We can't create just a temporary file as gpg requires the given
trustdb.gpg file to be valid (if it exists), so we would have to remove
the file before calling gnupg which would allow mktemp (and co) to hand
exactly this filename out to another program (unlikely, but still).

11 years agoadd a not documented apt-key --fakeroot option
David Kalnischkies [Thu, 11 Jul 2013 17:20:09 +0000 (19:20 +0200)] 
add a not documented apt-key --fakeroot option

Usually, most apt-key commands require root, so the script is checking
for being run as root, but in your tests we use a non-root location, so
we don't need to be root and therefore need an option to skip the check.

Git-Dch: Ignore

11 years agouse our _error stack to generate openpty errors
David Kalnischkies [Sat, 13 Jul 2013 21:14:41 +0000 (23:14 +0200)] 
use our _error stack to generate openpty errors

While we don't want these error messages on our usual stack, we can use
our usual infrastructure to generate an error message with all the usual
bells like errno and strerror attached.

Git-Dch: Ignore

11 years agodo not try to chown if not run as root
David Kalnischkies [Sat, 13 Jul 2013 21:05:55 +0000 (23:05 +0200)] 
do not try to chown if not run as root

If this code is run as non-root we are in a special situation (e.g. in
our testcases) where it is obvious that we can't enforce user/group on
any file, so skip this code altogether instead of bugging users with
an error message – which we also switch to a warning as a failure to
open the file is "just" a warning, so the 'wrong' owner shouldn't be
that much of an issue.

The file is still handled with chmod, so all the security we can enforce
is still enforced of course, which also gets a warning if it fails.

Git-Dch: Ignore

11 years agofix output redirection order
David Kalnischkies [Sat, 13 Jul 2013 20:57:44 +0000 (22:57 +0200)] 
fix output redirection order

First redirect output to a file, then redirect other outputs to this
output, not the other way around as this will not work.

Git-Dch: Ignore

11 years agofix: --print-uris removes authentication
David Kalnischkies [Sat, 10 Aug 2013 10:40:37 +0000 (12:40 +0200)] 
fix: --print-uris removes authentication

The constructors of our (clear)sign-acquire-items move a pre-existent
file for error-recovery away, which gets restored or discarded later as
the acquire progresses, but --print-uris never really starts the
acquire process, so the files aren't restored (as they should).

To fix this both get a destructor which checks for signs of acquire
doing anything and if it hasn't the file is restored.

Note that these virtual destructors theoretically break the API, but
only with classes extending the sign-acquire-items and nobody does this,
as it would be insane for library users to fiddle with Acquire
internals – and these classes are internals.

Closes: 719263
11 years agoadd chronic-like testsuccess/testfailure helpers
David Kalnischkies [Sat, 10 Aug 2013 08:01:06 +0000 (10:01 +0200)] 
add chronic-like testsuccess/testfailure helpers

For many commands the output isn't stable (like then dpkg is called) but
the exitcode is, so this helper enhances the common && msgpass ||
msgfail by generating automatically a msgtest and showing the output of
the command in case of failure instead of discarding it unconditionally,
the later being chronic-like behaviour

Git-Dch: Ignore

11 years agotest Release file handling with expired keys
David Kalnischkies [Fri, 9 Aug 2013 20:20:27 +0000 (22:20 +0200)] 
test Release file handling with expired keys

Signing files with expired keys is not as easy as it sounds, so the
framework jumps a few loops to do it, but it might come in handy to have
an expired key around for later tests even if it is not that different
from having no key in regards to APT behaviour.

Git-Dch: Ignore

11 years agoimprove error message
Michael Vogt [Mon, 12 Aug 2013 15:41:36 +0000 (17:41 +0200)] 
improve error message

11 years agosome more coverity fixes
Michael Vogt [Mon, 12 Aug 2013 15:24:15 +0000 (17:24 +0200)] 
some more coverity fixes

11 years agouse the 'abi-complicance-checker package instead of using the buildin copy for the...
Michael Vogt [Mon, 12 Aug 2013 15:11:41 +0000 (17:11 +0200)] 
use the 'abi-complicance-checker package instead of using the buildin copy for the abi checks

11 years agoComplete Japanese translation
Christian PERRIER [Sun, 11 Aug 2013 13:42:09 +0000 (15:42 +0200)] 
Complete Japanese translation

11 years agoMerge branch 'debian/sid' of git://git.debian.org/git/apt/apt into debian/sid
Christian PERRIER [Sat, 10 Aug 2013 10:51:49 +0000 (12:51 +0200)] 
Merge branch 'debian/sid' of git://git.debian.org/git/apt/apt into debian/sid

11 years agoJapanese translation update. Closes: #719279
Christian PERRIER [Sat, 10 Aug 2013 10:51:40 +0000 (12:51 +0200)] 
Japanese translation update. Closes: #719279

11 years agofix -Wall errors
Michael Vogt [Thu, 8 Aug 2013 13:40:15 +0000 (15:40 +0200)] 
fix -Wall errors

11 years agouse pkgTagFile to parse "header" of Release files
David Kalnischkies [Wed, 7 Aug 2013 14:45:49 +0000 (16:45 +0200)] 
use pkgTagFile to parse "header" of Release files

The handwritten parsing here was mostly done as we couldn't trust the
Release file we got, but nowadays we are sure that the Release file is
valid and contains just a single section we want it to include.

Beside reducing code it also fixes a bug: Fieldnames in deb822 formatted
files are case-insensitive and pkgTagFile does it correctly, but this
selfbuilt stuff here didn't.

11 years agostop skipping "-----" sections in Release files
David Kalnischkies [Wed, 7 Aug 2013 14:40:39 +0000 (16:40 +0200)] 
stop skipping "-----" sections in Release files

The file we read will always be a Release file as the clearsign is
stripped earlier in this method, so this check is just wasting CPU
Its also removing the risk that this could ever be part of a valid
section, even if I can't imagine how that should be valid.

Git-Dch: Ignore

11 years agospecific pins below 1000 cause downgrades
David Kalnischkies [Wed, 7 Aug 2013 16:00:07 +0000 (18:00 +0200)] 
specific pins below 1000 cause downgrades

We start your quest by using the version of a package applying to a
specific pin, but that version could very well be below the current
version, which causes APT to suggest a downgrade even if it is
advertised that it never does this below 1000.

Its of course questionable what use a specific pin on a package has
which has a newer version already installed, but reacting with the
suggestion of a downgrade is really not appropriated (even if its kinda
likely that this is actually the intend the user has – it could just as
well be an outdated pin) and as pinning is complicated enough we should
atleast do what is described in the manpage.

So we look out for the specific pin and if we haven't seen it at the
moment we see the installed version, we ignore the specific pin.

Closes: 543966
11 years agomemset() pkgTagSections data to make coverity happy
Michael Vogt [Tue, 6 Aug 2013 07:13:27 +0000 (09:13 +0200)] 
memset() pkgTagSections data to make coverity happy

11 years agoMerge remote-tracking branch 'upstream/debian/sid' into bugfix/coverity
Michael Vogt [Mon, 5 Aug 2013 20:51:30 +0000 (22:51 +0200)] 
Merge remote-tracking branch 'upstream/debian/sid' into bugfix/coverity

11 years agofix some unitialized data members
Michael Vogt [Mon, 5 Aug 2013 20:40:28 +0000 (22:40 +0200)] 
fix some unitialized data members

11 years agoVietnamese translation update. Closes: #718615
Christian PERRIER [Sat, 3 Aug 2013 14:07:13 +0000 (16:07 +0200)] 
Vietnamese translation update. Closes: #718615

11 years agoprefer native arch over higher priority for providers
Colin Watson [Thu, 1 Aug 2013 11:19:43 +0000 (13:19 +0200)] 
prefer native arch over higher priority for providers

The rational from the buglog:
> The problem here is that the Priority field in one of the Packages files
> is incorrect due to a mishap with reprepro configuration, […] the
> amd64 version is Priority: standard but the arm64 version is Priority:
> optional (and has a stray "optional: interpreters" field).
> […]
> However, Priority is a rather weak property of a package because it's
> typically applied via overrides, and it's easy for maintainers of
> third-party repositories to misconfigure them so that overrides aren't
> applied correctly.  It shouldn't be ranked ahead of choosing packages
> from the native architecture.  In this case, I have no user-mode
> emulation for arm64 set up, so choosing m4:arm64 simply won't work.

This effectly makes the priority the least interesting data point in
chosing a provider, which is in line with the other checks we have
already order above priority in the past and also has a certain appeal by
the soft irony it provides.

Closes: #718482
11 years agounset LANGUAGE for showing [Y/n] answer hints
David Kalnischkies [Thu, 1 Aug 2013 10:58:20 +0000 (12:58 +0200)] 
unset LANGUAGE for showing [Y/n] answer hints

nl_langinfo is used to acquire the YESEXPR of the language used,
but it will return the one from LC_MESSAGES, which might be different
from the language chosen for display of the question (based on LANGUAGE)
so this commit removes the [Y/n] help text from the questions itself and
moves it to the prompt creation in which the usage of LC_MESSAGES is
forced for it, so that the helptext shown actually represents the
characters accepted as input for the question.

There is still room for problems of course starting with an untranslated
"[Y/n]" but a translated YESEXPR or the problem that the question is
asked in a completely different language which might have a conflicting
definition of [Y/n] input or the user simple ignores the helptext and
assumes that an answer matching the question language is accepted, but
the mayority of users will never have this problem to begin with, so we
should be fine (or at least a bit finer than before).

Closes nothing really, but should at least help a bit with bugs like
deb:194614, deb:471102, lp:1205578, and countless others.

11 years agoMerge remote-tracking branch 'mvo/bugfix/coverity' into debian/sid
Michael Vogt [Sun, 28 Jul 2013 07:25:57 +0000 (09:25 +0200)] 
Merge remote-tracking branch 'mvo/bugfix/coverity' into debian/sid

11 years agorun "doxygen -u" to update doxygen config
David Kalnischkies [Fri, 26 Jul 2013 22:28:10 +0000 (00:28 +0200)] 
run "doxygen -u" to update doxygen config

Git-Dch: Ignore

11 years agoupdate the symbol files to reflect current state
David Kalnischkies [Fri, 26 Jul 2013 21:56:28 +0000 (23:56 +0200)] 
update the symbol files to reflect current state

11 years agoexclude config.{sub,guess} from source package
David Kalnischkies [Fri, 26 Jul 2013 20:37:43 +0000 (22:37 +0200)] 
exclude config.{sub,guess} from source package

Lintian complains about these links in the source package as they leave
the source directory and as they are autogenerated there isn't that much
sense in shipping them, we can just recreate them before calling
configure.

11 years agofix another missing va_end()
Michael Vogt [Fri, 26 Jul 2013 20:18:36 +0000 (22:18 +0200)] 
fix another missing va_end()

11 years agofix missing va_end()
Michael Vogt [Fri, 26 Jul 2013 20:12:36 +0000 (22:12 +0200)] 
fix missing va_end()

11 years agofix some coverity chroot() releated warnings
Michael Vogt [Fri, 26 Jul 2013 20:10:05 +0000 (22:10 +0200)] 
fix some coverity chroot() releated warnings

11 years agoreenable automatic parallel build of APT
David Kalnischkies [Fri, 26 Jul 2013 18:37:34 +0000 (20:37 +0200)] 
reenable automatic parallel build of APT

It works for a while now in manual tests, now lets see how it will
perform if enabled for all by default automatically.

11 years agoimplement debian/rules build-{arch,indep} as required by policy 3.9.4
David Kalnischkies [Fri, 26 Jul 2013 17:13:55 +0000 (19:13 +0200)] 
implement debian/rules build-{arch,indep} as required by policy 3.9.4

11 years agocorrect management-typo in description found by lintian
David Kalnischkies [Fri, 26 Jul 2013 16:36:50 +0000 (18:36 +0200)] 
correct management-typo in description found by lintian

11 years agoadd missing Turkish (tr) to po/LINGUAS
David Kalnischkies [Fri, 26 Jul 2013 16:01:33 +0000 (18:01 +0200)] 
add missing Turkish (tr) to po/LINGUAS

And while at it ensure that this can't happen again by letting the build
fail in case a po file is available but the language isn't mentioned in
the LINGUAS file (not even as a disabled language).

11 years agoadd missing test make
Michael Vogt [Fri, 26 Jul 2013 15:31:24 +0000 (17:31 +0200)] 
add missing test make

11 years agoremove ALL_LINGUAS as it is overruled by po/LINGUAS
David Kalnischkies [Fri, 26 Jul 2013 12:38:18 +0000 (14:38 +0200)] 
remove ALL_LINGUAS as it is overruled by po/LINGUAS

The list shows that it is ignored as some translations which are shipped
are not included here, so remove this source of possible confusion.

Git-Dch: Ignore

11 years agomake autoconf happy by "mv configure.{in,ac}"
David Kalnischkies [Fri, 26 Jul 2013 12:12:29 +0000 (14:12 +0200)] 
make autoconf happy by "mv configure.{in,ac}"

Git-Dch: Ignore

11 years agoensure that FileFd::Size returns 0 in error cases
David Kalnischkies [Fri, 26 Jul 2013 10:20:50 +0000 (12:20 +0200)] 
ensure that FileFd::Size returns 0 in error cases

11 years agoproper cleanup varargs in _error (uncovered by Coverity)
David Kalnischkies [Fri, 26 Jul 2013 10:04:55 +0000 (12:04 +0200)] 
proper cleanup varargs in _error (uncovered by Coverity)

Git-Dch: Ignore

11 years agouse FileFd::Write instead of fwrite for errors
David Kalnischkies [Fri, 26 Jul 2013 09:42:02 +0000 (11:42 +0200)] 
use FileFd::Write instead of fwrite for errors

Using the static FileFd::Write method gives us error messages for free
so we use it here to avoid failing silently (with a fail silent error).

Git-Dch: Ignore

11 years agoadd missing "make test" for travis
Michael Vogt [Fri, 26 Jul 2013 09:22:30 +0000 (11:22 +0200)] 
add missing "make test" for travis