Package: reprepro
Version: 5.1.1-1
Severity: normal
Tags: patch

Hi

I tried to import the source package openssl1.0 into a local repository
managed by reprepro which fails:

# reprepro -VVV includedsc somecodename ../openssl1.0_1.0.2k-1.dsc
No section and no priority for 'openssl1.0', skipping.
There have been errors!

The reason seems to be that the function sourceextraction_setpart aborts
scanning if the .dsc file lists a file having an unknown extension. In case of
openssl1.0 the original tarball is accompanied by an .asc file which seems to
contain some kind of signature.

I have attached a patch that makes reprepro ignore .asc files just like it
ignores .dsc files. With this patch applied I am able to import the source
package of openssl1.0.

Would you please have a look at this? Thanks a lot!

Regards
  Marc


-- System Information:
Debian Release: 9.0
  APT prefers unstable
  APT policy: (900, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: unable to detect

Versions of packages reprepro depends on:
ii  libarchive13   3.2.1-6
ii  libbz2-1.0     1.0.6-8.1
ii  libc6          2.24-9
ii  libdb5.3       5.3.28-12+b1
ii  libgpg-error0  1.26-2
ii  libgpgme11     1.8.0-3
ii  liblzma5       5.2.2-1.2
ii  zlib1g         1:1.2.8.dfsg-5

Versions of packages reprepro recommends:
ii  apt  1.4~beta3

Versions of packages reprepro suggests:
ii  gnupg-agent      2.1.18-4
pn  inoticoming      <none>
pn  lzip             <none>
ii  pinentry-curses  1.0.0-2

-- no debconf information
diff -Nurb reprepro-5.1.1.orig/sourceextraction.c 
reprepro-5.1.1/sourceextraction.c
--- reprepro-5.1.1.orig/sourceextraction.c      2016-12-24 01:11:30.000000000 
+0100
+++ reprepro-5.1.1/sourceextraction.c   2017-02-07 14:49:30.447755283 +0100
@@ -75,6 +75,8 @@
 
        if (endswith(basefilename, bl, ".dsc"))
                return;
+       else if (endswith(basefilename, bl, ".asc"))
+               return;
        else if (endswith(basefilename, bl, ".diff")) {
                e->difffile = i;
                e->diffcompression = c;

Reply via email to