]> err.no Git - dpkg/commitdiff
Merge 1.9 branch.
authorAdam Heath <doogie@debian.org>
Sun, 26 May 2002 03:53:42 +0000 (03:53 +0000)
committerAdam Heath <doogie@debian.org>
Sun, 26 May 2002 03:53:42 +0000 (03:53 +0000)
12 files changed:
ChangeLog
debian/changelog
debian/control
debian/dpkg.cfg
debian/dpkg.conffiles
debian/dpkg.postinst
debian/dpkg.postrm [new file with mode: 0755]
debian/rules
lib/mlib.c
main/dpkg.8
main/processarc.c
utils/start-stop-daemon.8

index bc448dac4beafc53737de42f5bdd30bce56dd19a..668bc60e7a0305392b648602ffc1cbfc982ab26a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+Sat May 25 22:45:06 CDT 2002 Adam Heath <doogie@debian.org>
+
+  * Merge changes from 1.9.20 and 1.9.21.
+    * utils/start-stop-daemon.8: Fix some nroff formatting errors
+    ? po.ru.po: Fix mistranslation
+    * main/dpkg.8: document --force-confmiss, improve description for
+      --force-conf{old,new}
+    * lib/mlib.c: Detect truncated debs, and abort the unpack.
+    * debian/rules: install dpkg.cfg in docdir, install dpkg.postrm.  Also
+      install dselect.cfg in /etc/dpkg.
+    * debian/dpkg.cfg: add force-overwrite
+    * debian/dpkg.postrm: new file
+    ? po/sv.po: Removed fuzzy translation.
+    ? po/sv.po: Fixed broken c-format escapes which would make some error
+      messages display incorrectly.
+    * debian/control: Fix build-depends on zlib1g-dev to >= 1:1.1.3-19.1.
+    * debian/changelog: The missing 1.9 entries.
+
 Fri May 24 22:38:01 CDT 2002 Adam Heath <doogie@debian.org>
 
   * scripts/dpkg-scanpackages.8: Add dpkg-scansources to
index 7b35b147fc8b5a8ba704e6bf039b1e3aed20b581..114b634fc04db12a847b3eb2f37458fe682749e7 100644 (file)
@@ -117,6 +117,29 @@ dpkg (1.10) unstable; urgency=low
 
  -- Wichert Akkerman <wakkerma@debian.org>  Mon, 20 Aug 2001 14:54:38 +0200
 
+dpkg (1.9.21) unstable; urgency=low
+
+  * Fix corrupt Swedish translations that would some error messages display
+    incorrectly.
+  * Enable --force-overwrite by default in /etc/dpkg/dpkg.cfg
+  * dpkg.cfg is now no longer a conffile. This means the installer can
+    change defaults depending on how an install is done
+  * Detect truncated debs, and abort the unpack.  Closes: #138569.
+  * Improve dpkg(8) --force documentation
+  * Fix error in Russian dselect translation
+
+ -- Wichert Akkerman <wakkerma@debian.org>  Thu, 16 May 2002 19:42:29 +0200
+
+dpkg (1.9.20) unstable; urgency=medium
+
+  * Fix assertion when --auto-deconfigure is set.  Closes: #137765.
+  * Fix segfault discovered by fixing the above.
+  * Fix segfault when getenv("PATH") returns null.  Closes: #136349
+  * Recompiled against updated zlib, to fix possible security issue.  Also
+    bumped build-depends to match.  Closes: #137931(grave)
+
+ -- Adam Heath <doogie@debian.org>  Sun, 17 Mar 2002 02:52:44 -0600
+
 dpkg (1.9.19) unstable; urgency=medium
 
   * install-info continues to read all data from a pipe, until EOF.
index 2cbe829cd698ac9bd91023086a1349dc9941ea98..9d13b29da12e1b3f60b55a6ce74b9c5e6e247e72 100644 (file)
@@ -5,8 +5,9 @@ Maintainer: Dpkg Development <debian-dpkg@lists.debian.org>
 Uploaders: Wichert Akkerman <wakkerma@debian.org>, Adam Heath <doogie@debian.org>
 Origin: debian
 Bugs: debbugs://bugs.debian.org
-Standards-Version: 3.1.0
-Build-Depends: debiandoc-sgml, sgmltools-lite, libncurses-dev, gettext (>= 0.10.36), zlib1g-dev
+Standards-Version: 3.5.4
+Build-Depends: debiandoc-sgml, sgmltools-lite, libncurses-dev, gettext (>= 0.10.36), zlib1g-dev (>= 1:1.1.3-19.1)
+Uploaders: Wichert Akkerman <wakkerma@debian.org>, Adam Heath <doogie@debian.org>
 
 Package: dpkg
 Architecture: any
index 47ca75e8ad4d251cce926d62d7b2c69b3ffd2bae..3533ff7093f6dae55f079c12a14737ce0985a6fa 100644 (file)
@@ -4,4 +4,9 @@
 # options are allowed. Values can be specific by putting them after
 # the option, seperated by whitespace and/or an `=' sign.
 #
+# Do not enable debsign by default; since Debian does not use embedded
+# signature debsign would reject all packages.
 no-debsig
+#
+# Allow file overlaps between packages. 
+force-overwrite
index 4e1ecd669718bd9108e67d2109301f3d50d8561c..180c75b1c0a9a25b522a2fc051f010c8ac88075e 100644 (file)
@@ -1,3 +1,4 @@
 /etc/dpkg/dpkg.cfg
+/etc/dpkg/dselect.cfg
 /etc/dpkg/origins/debian
 /etc/alternatives/README
index e1514284fca931aef638fbb9f699b2d1bc92be84..46720a2f7262b984de6f2354755a47d68f3324b2 100755 (executable)
@@ -2,8 +2,120 @@
 
 set -e
 
-if [ "$1" != "configure" ] ; then
-       exit 0
+dupdaemonhelp () {
+       cat <<EOF
+
+Some daemons and similar services whose scripts have links in the
+/etc/rcN.d directories have both start (S) and stop (K) links in
+some runlevels.  Thus these services get stopped and immediately
+restarted at some runlevel changes, which is probably not what
+you want.  I can remove the probably-spurious K links if you like.
+
+Type Y to remove then, N to leave them, or L to list them.
+If you don't know what to do you can say N now and then delete
+them by hand later.
+
+EOF
+}
+
+if [ "x$1" = xconfigure ]; then
+       if [ -d /usr/doc -a ! -e /usr/doc/dpkg -a -d /usr/share/doc/dpkg ] ; then
+               ln -s ../share/doc/dpkg /usr/doc/dpkg
+       fi
+
+       if [ -z "$2" -a ! -f /etc/dpkg/dpkg.cfg ] ; then
+               cp /usr/share/doc/dpkg/dpkg.cfg /etc/dpkg
+       fi
+
+       case "$2" in
+       0.* | 1.0.* | 1.1.0 | 1.1.0[^0-9]* | '' )
+               for f in 0 1 2 3 4 5 6
+               do
+                       cd /etc/rc$f.d
+                       for g in K[0-9][0-9]*
+                       do
+                               if [ -n "`echo \"x$g\" | tr -d 0-9A-Za-z_-`" ]
+                               then
+                                       continue
+                               fi
+                               h="`echo $g | sed -e 's/^K/S/'`"
+                               if ! [ -L $h -a -L $g ] \
+                                 || [ "`ls -Li $g 2>/dev/null | awk '{print $1}'`" != \
+                                      "`ls -Li $h 2>/dev/null | awk '{print $1}'`" ]
+                               then
+                                       continue
+                               fi
+                               removes="$removes rc$f.d/$g"
+                       done
+               done
+               if [ -n "$removes" ]
+               then
+                       cd /etc
+                       dupdaemonhelp
+                       while [ -n "$removes" ]
+                       do
+                               echo -n 'y=remove, n=leave, l=list, h=help ?  '
+                               read response
+                               case "$response" in
+                               [Yy]*)
+                                       echo "Removing duplicate K links ..."
+                                       rm -v $removes
+                                       removes=""
+                                       ;;
+                               [Nn]*)
+                                       echo -e "OK, leaving them.\n"
+                                       removes=""
+                                       ;;
+                               [Ll]*)
+                                       echo
+                                       echo $removes
+                                       echo
+                                       ;;
+                               [Hh]*)
+                                       dupdaemonhelp
+                                       ;;
+                               esac
+                       done
+               fi
+               ;;
+       1.1.6 | 1.1.6elf | 1.2.[0123] | 1.2.[0123]elf )
+               response=''
+               while [ -z "$response" ]; do
+                       echo -n '
+The version of dpkg you'\''re upgrading from had a problem with the
+install-info program used to maintain the /usr/info/dir file.  It may
+have corrupted the file, for example by placing new entries for the
+menu in it before the `* Menu'\'' line (thus making them ineffective) or
+by creating several identical sections.
+
+I can try to sort these problems out, but beware that this process is
+not guaranteed not to mess up a dir file which has things that look
+like menu entries in the introductory paragraphs.  The distributed dir
+files do not do this, so if you haven'\''t edited /usr/info/dir it'\''s
+almost certainly safe to say `yes'\'' to the next question.
+
+If you say `no'\'' you may wish to check and/or edit /usr/info/dir yourself.
+
+Try to check/repair /usr/info/dir automatically ?  [y/n]  '
+                       read response
+                       case "$response" in
+                       [Yy]* | '')     response=yes ;;
+                       [Nn]*)          response=no ;;
+                       *)              response='' ;;
+                       esac
+               done
+               if [ "$response" = yes ]; then
+                       echo "
+Checking/repairing /usr/info/dir ..."
+                       cleanup-info --unsafe
+                       echo
+               else
+                       echo "
+OK.
+"
+               fi
+               ;;
+       esac
 fi
 
 if [ -d /usr/doc -a ! -e /usr/doc/dpkg -a -d /usr/share/doc/dpkg ] ; then
diff --git a/debian/dpkg.postrm b/debian/dpkg.postrm
new file mode 100755 (executable)
index 0000000..83b8119
--- /dev/null
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -e
+
+if [ "$1" = "purge" ] ; then
+       rm -f /etc/dpkg/dpkg.cfg
+fi
+
+exit 0
+
index d8564c2ee08c39be64ff2a196ce0518cc29c61fe..95568c05d940ffb4157fb49bb93b475f90984e86 100755 (executable)
@@ -130,7 +130,7 @@ binary-dpkg-most binary-dpkg-static-most: binary-dpkg%-most: stamp-binary%
        done
 
        install -d -m 755 -o root -g root $(TMP_DPKG)/etc/dpkg
-       install -p -m 644 -o root -g root debian/dpkg.cfg \
+       install -p -m 644 -o root -g root debian/dselect.cfg \
                $(TMP_DPKG)/etc/dpkg/
 
 # Now that dpkg has been installed, Debianize it
@@ -146,6 +146,8 @@ binary-dpkg-most binary-dpkg-static-most: binary-dpkg%-most: stamp-binary%
                $(TMP_DPKG)/usr/share/doc/dpkg$(static)/changelog.Debian
        rm -f $(TMP_DPKG)/usr/share/doc/dpkg$(static)/copyright
        gzip -9 $(TMP_DPKG)/usr/share/doc/dpkg$(static)/*
+       install -p -m 644 -o root -g root debian/dpkg.cfg \
+               $(TMP_DPKG)/usr/share/doc/dpkg$(static)/
        install -p -m 644 -o root -g root debian/copyright \
                $(TMP_DPKG)/usr/share/doc/dpkg$(static)/
 
@@ -155,6 +157,7 @@ binary-dpkg-most binary-dpkg-static-most: binary-dpkg%-most: stamp-binary%
        install -p -m 755 -o root -g root debian/dpkg.preinst $(TMP_DPKG)/DEBIAN/preinst
        install -p -m 755 -o root -g root debian/dpkg.prerm $(TMP_DPKG)/DEBIAN/prerm
        install -p -m 755 -o root -g root debian/dpkg.postinst $(TMP_DPKG)/DEBIAN/postinst
+       install -p -m 755 -o root -g root debian/dpkg.postrm $(TMP_DPKG)/DEBIAN/postrm
 
        dpkg-shlibdeps -dPre-Depends -Tdebian/dpkg$(static).substvars \
                $(TMP_DPKG)/sbin/start-stop-daemon \
index dd7c47d958d2f18961d4bd23a402ee564607e217..6fc3cff6d9533a476e2f91530032b888a161b23a 100644 (file)
@@ -335,6 +335,7 @@ ssize_t buffer_copy(buffer_data_t read_data, buffer_data_t write_data, ssize_t l
     }
   }
   if (bytesread<0 || byteswritten<0) ohshite(_("failed in buffer_copy (%s)"), desc);
+  if (limit > 0) ohshit(_("short read in buffer_copy (%s)"), desc);
 
   free(buf);
   return totalread;
index 3eb4712672f089687035c31c7d06851574743d41..328d06f775339fb00de081201730eaee2f29bdbc 100644 (file)
@@ -375,12 +375,20 @@ Don't care about versions when checking dependencies.
 Install, even if it conflicts with another package. This is dangerous,
 for it will usually cause overwriting of some files.
 
+\fBconfmiss\fP:
+Always install a missing configuration file. This is dangerous,
+since it means not preserving a change (removing) made to the
+file.
+
 \fBconfnew\fP:
 If a conffile has been modified always install the new version without
-prompting.
+prompting, unless the \fB--force-confdef\fP is also specified, in
+which case the default action is preferred.
 
 \fBconfold\fP:
-If a conffile has been modified always keep the old version without prompting.
+If a conffile has been modified always keep the old version without
+prompting, unless the \fB--force-confdef\fP is also specified, in
+which case the default action is preferred.
 
 \fBconfdef\fP:
 If a conffile has been modified always choose the default action. If
index 926e7f13a59dbe984323ee29f6ca4a9d82ca65a6..20c4473a8ce837c81ffa9dfcc58de32cca84c025 100644 (file)
@@ -197,7 +197,7 @@ void process_archive(const char *filename) {
     pkg->files->next= 0;
     pkg->files->name= pkg->files->msdosname= pkg->files->md5sum= 0;
   }
-  /* Always nfmalloc.  Otherwise, we may overwrite some other field. */
+  /* Always nfmalloc.  Otherwise, we may overwrite some other field(like md5sum). */
   pkg->files->size= nfmalloc(30);
   sprintf(pkg->files->size,"%lu",(unsigned long)stab.st_size);
 
index fbc07e12329fcce199bb19e66576124ce8668fb6..dd446751edca5df7f47587fd7a5342f8ea354f02 100644 (file)
@@ -44,8 +44,9 @@ Any arguments given after
 on the command line are passed unmodified to the program being
 started.  If
 .B --retry
-is specified then start-stop-daemon will check that the process(es)
-have terminated.
+is specified then 
+.B start-stop-daemon
+will check that the process(es) have terminated.
 
 With 
 .BR --stop ,
@@ -68,34 +69,29 @@ is specified).
 .TP
 \fB-x\fP|\fB--exec\fP \fIexecutable\fP
 Check for processes that are instances of this executable (according to 
-.B /proc/
-.I pid
-.B /exe 
+.B /proc/\fIpid\fB/exe\fP
 ).
 .TP
 \fB-p\fP|\fB--pidfile\fP \fIpid-file\fP
 Check for processes whose process-id is specified in 
-.I pid-file.
+.IR pid-file .
 .TP
 \fB-u\fP|\fB--user\fP \fIusername\fP|\fIuid\fP
 Check for processes owned by the user specified by
 .I username 
 or
-.I uid.
+.IR uid .
 .TP
 \fB-n\fP|\fB--name\fP \fIprocess-name\fP
 Check for processes with the name
 .I process-name
 (according to
-.B /proc/
-.I pid
-.B /stat 
-).
+.BR /proc/\fIpid\fB/stat\fP ).
 .TP
 \fB-s\fP|\fB--signal\fP \fIsignal\fP
 With
-.BR --stop
-specifies the signal to send to processes being stopped (default 15).
+.BR --stop ,
+specifies the signal to send to processes being stopped (default 15).
 .TP
 \fB-R\fP|\fB--retry\fP \fItimeout\fP|\fIschedule\fP
 With