public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libtar/files/, dev-libs/libtar/
@ 2023-04-28  6:05 Sam James
  0 siblings, 0 replies; 3+ messages in thread
From: Sam James @ 2023-04-28  6:05 UTC (permalink / raw
  To: gentoo-commits

commit:     b5d27ba41941be450cada145f6a03367ecb0a525
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 28 05:52:12 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Apr 28 06:04:11 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b5d27ba4

dev-libs/libtar: fix configure w/ clang 16

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../files/libtar-1.2.20-configure-clang16.patch    | 43 +++++++++++++++
 dev-libs/libtar/libtar-1.2.20-r6.ebuild            | 64 ++++++++++++++++++++++
 2 files changed, 107 insertions(+)

diff --git a/dev-libs/libtar/files/libtar-1.2.20-configure-clang16.patch b/dev-libs/libtar/files/libtar-1.2.20-configure-clang16.patch
new file mode 100644
index 000000000000..c47ae7f3c8f2
--- /dev/null
+++ b/dev-libs/libtar/files/libtar-1.2.20-configure-clang16.patch
@@ -0,0 +1,43 @@
+https://src.fedoraproject.org/rpms/libtar/raw/175c39e7e572fea263fd2e35175646852a785def/f/libtar-configure-c99.patch
+
+Add additional #include directives to prevent implicit function
+declarations and build failures with future compilers.
+
+--- a/compat/module.ac
++++ b/compat/module.ac
+@@ -31,6 +31,8 @@ AC_DEFUN([COMPAT_FUNC_BASENAME], [
+     [compat_cv_func_basename_works],
+     [AC_TRY_RUN([
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+ #ifdef HAVE_LIBGEN_H
+ # include <libgen.h>
+ #endif
+@@ -85,6 +87,8 @@ AC_DEFUN([COMPAT_FUNC_DIRNAME], [
+     [compat_cv_func_dirname_works],
+     [AC_TRY_RUN([
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+ #ifdef HAVE_LIBGEN_H
+ # include <libgen.h>
+ #endif
+@@ -208,6 +212,7 @@ AC_DEFUN([COMPAT_FUNC_MAKEDEV], [
+     [compat_cv_func_makedev_three_args],
+     [AC_COMPILE_IFELSE([
+       AC_LANG_PROGRAM([[
++#include <stdlib.h>
+ #include <sys/types.h>
+ #ifdef MAJOR_IN_MKDEV
+ # include <sys/mkdev.h>
+@@ -248,6 +253,8 @@ AC_DEFUN([COMPAT_FUNC_SNPRINTF], [
+     [compat_cv_func_snprintf_works],
+     [AC_TRY_RUN([
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+ 
+ typedef struct {
+   int length;
+

diff --git a/dev-libs/libtar/libtar-1.2.20-r6.ebuild b/dev-libs/libtar/libtar-1.2.20-r6.ebuild
new file mode 100644
index 000000000000..de4f3b50ca80
--- /dev/null
+++ b/dev-libs/libtar/libtar-1.2.20-r6.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="C library for manipulating tar archives"
+HOMEPAGE="https://repo.or.cz/w/libtar.git/"
+SRC_URI="https://dev.gentoo.org/~pinkbyte/distfiles/snapshots/${P}.tar.gz"
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="zlib"
+# There is no test and 'check' target errors out due to mixing of automake &
+# non-automake makefiles.
+# https://bugs.gentoo.org/526436
+RESTRICT="test"
+
+RDEPEND="
+	zlib? ( sys-libs/zlib:= )
+	!zlib? ( app-arch/gzip )"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.2.11-free.patch
+	"${FILESDIR}"/${PN}-1.2.11-impl-dec.patch
+	"${FILESDIR}"/CVE-2013-4420.patch
+	"${FILESDIR}"/${P}-fd-leaks.patch
+	"${FILESDIR}"/${P}-tar_open-memleak.patch
+	"${FILESDIR}"/${P}-bin-memleaks.patch
+	"${FILESDIR}"/${P}-configure-clang16.patch
+)
+
+src_prepare() {
+	default
+
+	sed -e '/INSTALL_PROGRAM/s:-s::' \
+		-i {doc,lib{,tar}}/Makefile.in || die
+
+	eautoreconf
+}
+
+src_configure() {
+	local myeconfargs=(
+		--disable-encap
+		--disable-epkg-install
+		$(use_with zlib)
+	)
+
+	econf "${myeconfargs[@]}"
+}
+
+src_install() {
+	default
+	dodoc ChangeLog-1.0.x
+	newdoc compat/README README.compat
+	newdoc compat/TODO TODO.compat
+	newdoc listhash/TODO TODO.listhash
+
+	find "${ED}" -name '*.la' -delete || die
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libtar/files/, dev-libs/libtar/
@ 2018-02-17 13:37 Andreas Sturmlechner
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Sturmlechner @ 2018-02-17 13:37 UTC (permalink / raw
  To: gentoo-commits

commit:     d39b56393beb1755e008e5281cf882baeeae7a80
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 17 10:51:40 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Feb 17 13:37:21 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d39b5639

dev-libs/libtar: EAPI 6 bump

Add sys-libs/zlib slot op, drop inaccessible homepage.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 dev-libs/libtar/files/CVE-2013-4420.patch      | 12 ++---
 dev-libs/libtar/files/libtar-1.2.11-free.patch |  8 +--
 dev-libs/libtar/libtar-1.2.20-r4.ebuild        | 67 ++++++++++++++++++++++++++
 3 files changed, 77 insertions(+), 10 deletions(-)

diff --git a/dev-libs/libtar/files/CVE-2013-4420.patch b/dev-libs/libtar/files/CVE-2013-4420.patch
index d6e24860c92..833ff7b1dbb 100644
--- a/dev-libs/libtar/files/CVE-2013-4420.patch
+++ b/dev-libs/libtar/files/CVE-2013-4420.patch
@@ -1,5 +1,5 @@
---- a/libtar/lib/decode.c	2013-10-09 09:59:44.000000000 -0700
-+++ b/libtar/lib/decode.c	2015-07-20 20:57:58.331945962 -0700
+--- a/lib/decode.c	2013-10-09 09:59:44.000000000 -0700
++++ b/lib/decode.c	2015-07-20 20:57:58.331945962 -0700
 @@ -21,24 +21,55 @@
  # include <string.h>
  #endif
@@ -59,8 +59,8 @@
  	return filename;
  }
  
---- a/libtar/lib/extract.c	2013-10-09 09:59:44.000000000 -0700
-+++ b/libtar/lib/extract.c	2015-07-20 21:00:16.560956122 -0700
+--- a/lib/extract.c	2013-10-09 09:59:44.000000000 -0700
++++ b/lib/extract.c	2015-07-20 21:00:16.560956122 -0700
 @@ -305,7 +305,7 @@
  		linktgt = &lnp[strlen(lnp) + 1];
  	}
@@ -82,8 +82,8 @@
  	{
  #ifdef DEBUG
  		perror("symlink()");
---- a/libtar/lib/internal.h	2013-10-09 09:59:44.000000000 -0700
-+++ b/libtar/lib/internal.h	2015-07-20 21:00:51.258958673 -0700
+--- a/lib/internal.h	2013-10-09 09:59:44.000000000 -0700
++++ b/lib/internal.h	2015-07-20 21:00:51.258958673 -0700
 @@ -15,6 +15,7 @@
  
  #include <libtar.h>

diff --git a/dev-libs/libtar/files/libtar-1.2.11-free.patch b/dev-libs/libtar/files/libtar-1.2.11-free.patch
index 3a7b028d5d2..cb6524e5e5a 100644
--- a/dev-libs/libtar/files/libtar-1.2.11-free.patch
+++ b/dev-libs/libtar/files/libtar-1.2.11-free.patch
@@ -1,7 +1,7 @@
 stdlib.h is required for free()
 
---- lib/output.c
-+++ lib/output.c
+--- a/lib/output.c
++++ b/lib/output.c
 @@ -20,6 +20,7 @@
  #include <sys/param.h>
  
@@ -10,8 +10,8 @@ stdlib.h is required for free()
  # include <string.h>
  #endif
  
---- lib/wrapper.c
-+++ lib/wrapper.c
+--- a/lib/wrapper.c
++++ b/lib/wrapper.c
 @@ -18,6 +18,7 @@
  #include <errno.h>
  

diff --git a/dev-libs/libtar/libtar-1.2.20-r4.ebuild b/dev-libs/libtar/libtar-1.2.20-r4.ebuild
new file mode 100644
index 00000000000..5f441bbfa57
--- /dev/null
+++ b/dev-libs/libtar/libtar-1.2.20-r4.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="C library for manipulating tar archives"
+HOMEPAGE="http://repo.or.cz/w/libtar.git/"
+SRC_URI="https://dev.gentoo.org/~pinkbyte/distfiles/snapshots/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="static-libs zlib"
+
+RDEPEND="
+	zlib? ( sys-libs/zlib:= )
+	!zlib? ( app-arch/gzip )
+"
+DEPEND="${RDEPEND}"
+
+DOCS=( ChangeLog{,-1.0.x} README TODO )
+
+S="${WORKDIR}/${PN}"
+
+# There is no test and 'check' target errors out due to mixing of automake &
+# non-automake makefiles.
+# https://bugs.gentoo.org/show_bug.cgi?id=526436
+RESTRICT="test"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-1.2.11-free.patch
+	"${FILESDIR}"/${PN}-1.2.11-impl-dec.patch
+	"${FILESDIR}"/CVE-2013-4420.patch
+)
+
+src_prepare() {
+	default
+
+	sed -e '/INSTALL_PROGRAM/s:-s::' \
+		-i {doc,lib{,tar}}/Makefile.in || die
+
+	eautoreconf
+}
+
+src_configure() {
+	local myeconfargs=(
+		--enable-shared
+		--disable-encap
+		--disable-epkg-install
+		$(use_enable static-libs static)
+		$(use_with zlib)
+	)
+
+	econf ${myeconfargs[@]}
+}
+
+src_install() {
+	default
+
+	newdoc compat/README README.compat
+	newdoc compat/TODO TODO.compat
+	newdoc listhash/TODO TODO.listhash
+
+	find "${D}" -name '*.la' -delete || die
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-libs/libtar/files/, dev-libs/libtar/
@ 2018-02-17 13:37 Andreas Sturmlechner
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Sturmlechner @ 2018-02-17 13:37 UTC (permalink / raw
  To: gentoo-commits

commit:     24195ad7e78da44b9a5856d227c592ab9482ab49
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 17 12:03:32 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Feb 17 13:37:21 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24195ad7

dev-libs/libtar: Fix various memleaks and filedescriptor-leaks

Thanks-to: Michał Łyszczek <michal.lyszczek <AT> gmail.com>
Closes: https://bugs.gentoo.org/613438
Package-Manager: Portage-2.3.24, Repoman-2.3.6

 .../libtar/files/libtar-1.2.20-bin-memleaks.patch  | 117 +++++++++++++++++++++
 dev-libs/libtar/files/libtar-1.2.20-fd-leaks.patch |  98 +++++++++++++++++
 .../files/libtar-1.2.20-tar_open-memleak.patch     |  24 +++++
 dev-libs/libtar/libtar-1.2.20-r4.ebuild            |   3 +
 4 files changed, 242 insertions(+)

diff --git a/dev-libs/libtar/files/libtar-1.2.20-bin-memleaks.patch b/dev-libs/libtar/files/libtar-1.2.20-bin-memleaks.patch
new file mode 100644
index 00000000000..b6195da88d9
--- /dev/null
+++ b/dev-libs/libtar/files/libtar-1.2.20-bin-memleaks.patch
@@ -0,0 +1,117 @@
+From f3c711cf3054ff366a1a3500cdc8c64ecc2d2da6 Mon Sep 17 00:00:00 2001
+From: Huzaifa Sidhpurwala <huzaifas@fedoraproject.org>
+Date: Tue, 15 Oct 2013 20:05:04 -0400
+Subject: [PATCH] fix memleaks in libtar sample program
+
+---
+ libtar/libtar.c | 29 ++++++++++++++++++-----------
+ 1 file changed, 18 insertions(+), 11 deletions(-)
+
+diff --git a/libtar/libtar.c b/libtar/libtar.c
+index bb5644c..23f8741 100644
+--- a/libtar/libtar.c
++++ b/libtar/libtar.c
+@@ -253,6 +253,7 @@ extract(char *tarfile, char *rootdir)
+ 	if (tar_extract_all(t, rootdir) != 0)
+ 	{
+ 		fprintf(stderr, "tar_extract_all(): %s\n", strerror(errno));
++		tar_close(t);
+ 		return -1;
+ 	}
+ 
+@@ -270,12 +271,13 @@ extract(char *tarfile, char *rootdir)
+ 
+ 
+ void
+-usage()
++usage(void *rootdir)
+ {
+ 	printf("Usage: %s [-C rootdir] [-g] [-z] -x|-t filename.tar\n",
+ 	       progname);
+ 	printf("       %s [-C rootdir] [-g] [-z] -c filename.tar ...\n",
+ 	       progname);
++	free(rootdir);
+ 	exit(-1);
+ }
+ 
+@@ -292,6 +294,7 @@ main(int argc, char *argv[])
+ 	int c;
+ 	int mode = 0;
+ 	libtar_list_t *l;
++	int return_code = -2;
+ 
+ 	progname = basename(argv[0]);
+ 
+@@ -313,17 +316,17 @@ main(int argc, char *argv[])
+ 			break;
+ 		case 'c':
+ 			if (mode)
+-				usage();
++				usage(rootdir);
+ 			mode = MODE_CREATE;
+ 			break;
+ 		case 'x':
+ 			if (mode)
+-				usage();
++				usage(rootdir);
+ 			mode = MODE_EXTRACT;
+ 			break;
+ 		case 't':
+ 			if (mode)
+-				usage();
++				usage(rootdir);
+ 			mode = MODE_LIST;
+ 			break;
+ #ifdef HAVE_LIBZ
+@@ -332,7 +335,7 @@ main(int argc, char *argv[])
+ 			break;
+ #endif /* HAVE_LIBZ */
+ 		default:
+-			usage();
++			usage(rootdir);
+ 		}
+ 
+ 	if (!mode || ((argc - optind) < (mode == MODE_CREATE ? 2 : 1)))
+@@ -341,7 +344,7 @@ main(int argc, char *argv[])
+ 		printf("argc - optind == %d\tmode == %d\n", argc - optind,
+ 		       mode);
+ #endif
+-		usage();
++		usage(rootdir);
+ 	}
+ 
+ #ifdef DEBUG
+@@ -351,21 +354,25 @@ main(int argc, char *argv[])
+ 	switch (mode)
+ 	{
+ 	case MODE_EXTRACT:
+-		return extract(argv[optind], rootdir);
++		return_code = extract(argv[optind], rootdir);
++		break;
+ 	case MODE_CREATE:
+ 		tarfile = argv[optind];
+ 		l = libtar_list_new(LIST_QUEUE, NULL);
+ 		for (c = optind + 1; c < argc; c++)
+ 			libtar_list_add(l, argv[c]);
+-		return create(tarfile, rootdir, l);
++		return_code = create(tarfile, rootdir, l);
++		libtar_list_free(l, NULL);
++		break;
+ 	case MODE_LIST:
+-		return list(argv[optind]);
++		return_code = list(argv[optind]);
++		break;
+ 	default:
+ 		break;
+ 	}
+ 
+-	/* NOTREACHED */
+-	return -2;
++	free(rootdir);
++	return return_code;
+ }
+ 
+ 
+-- 
+2.10.5.GIT
+

diff --git a/dev-libs/libtar/files/libtar-1.2.20-fd-leaks.patch b/dev-libs/libtar/files/libtar-1.2.20-fd-leaks.patch
new file mode 100644
index 00000000000..816c9692551
--- /dev/null
+++ b/dev-libs/libtar/files/libtar-1.2.20-fd-leaks.patch
@@ -0,0 +1,98 @@
+From abd0274e6b2f708e9eaa29414b07b3f542cec694 Mon Sep 17 00:00:00 2001
+From: Kamil Dudka <kdudka@redhat.com>
+Date: Tue, 15 Oct 2013 19:48:41 -0400
+Subject: [PATCH] fix file descriptor leaks reported by cppcheck
+
+Bug: https://bugzilla.redhat.com/785760
+---
+ lib/append.c    | 14 +++++++++-----
+ lib/extract.c   |  4 ++++
+ libtar/libtar.c |  3 +++
+ 3 files changed, 16 insertions(+), 5 deletions(-)
+
+diff --git a/lib/append.c b/lib/append.c
+index e8bd89d..ff58532 100644
+--- a/lib/append.c
++++ b/lib/append.c
+@@ -216,6 +216,7 @@ tar_append_regfile(TAR *t, const char *realname)
+ 	int filefd;
+ 	int i, j;
+ 	size_t size;
++	int rv = -1;
+ 
+ 	filefd = open(realname, O_RDONLY);
+ 	if (filefd == -1)
+@@ -234,25 +235,28 @@ tar_append_regfile(TAR *t, const char *realname)
+ 		{
+ 			if (j != -1)
+ 				errno = EINVAL;
+-			return -1;
++			goto fail;
+ 		}
+ 		if (tar_block_write(t, &block) == -1)
+-			return -1;
++			goto fail;
+ 	}
+ 
+ 	if (i > 0)
+ 	{
+ 		j = read(filefd, &block, i);
+ 		if (j == -1)
+-			return -1;
++			goto fail;
+ 		memset(&(block[i]), 0, T_BLOCKSIZE - i);
+ 		if (tar_block_write(t, &block) == -1)
+-			return -1;
++			goto fail;
+ 	}
+ 
++	/* success! */
++	rv = 0;
++fail:
+ 	close(filefd);
+ 
+-	return 0;
++	return rv;
+ }
+ 
+ 
+diff --git a/lib/extract.c b/lib/extract.c
+index 36357e7..9fc6ad5 100644
+--- a/lib/extract.c
++++ b/lib/extract.c
+@@ -228,13 +228,17 @@ tar_extract_regfile(TAR *t, char *realname)
+ 		{
+ 			if (k != -1)
+ 				errno = EINVAL;
++			close(fdout);
+ 			return -1;
+ 		}
+ 
+ 		/* write block to output file */
+ 		if (write(fdout, buf,
+ 			  ((i > T_BLOCKSIZE) ? T_BLOCKSIZE : i)) == -1)
++		{
++			close(fdout);
+ 			return -1;
++		}
+ 	}
+ 
+ 	/* close output file */
+diff --git a/libtar/libtar.c b/libtar/libtar.c
+index 9fa92b2..bb5644c 100644
+--- a/libtar/libtar.c
++++ b/libtar/libtar.c
+@@ -83,7 +83,10 @@ gzopen_frontend(char *pathname, int oflags, int mode)
+ 		return -1;
+ 
+ 	if ((oflags & O_CREAT) && fchmod(fd, mode))
++	{
++		close(fd);
+ 		return -1;
++	}
+ 
+ 	gzf = gzdopen(fd, gzoflags);
+ 	if (!gzf)
+-- 
+2.10.5.GIT
+

diff --git a/dev-libs/libtar/files/libtar-1.2.20-tar_open-memleak.patch b/dev-libs/libtar/files/libtar-1.2.20-tar_open-memleak.patch
new file mode 100644
index 00000000000..b2a1209f3fc
--- /dev/null
+++ b/dev-libs/libtar/files/libtar-1.2.20-tar_open-memleak.patch
@@ -0,0 +1,24 @@
+From 36629a41208375f5105427e98078127551692028 Mon Sep 17 00:00:00 2001
+From: Huzaifa Sidhpurwala <huzaifas@fedoraproject.org>
+Date: Tue, 15 Oct 2013 20:02:58 -0400
+Subject: [PATCH] fix memleak on tar_open() failure
+
+---
+ lib/handle.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/lib/handle.c b/lib/handle.c
+index 33a262c..002d23c 100644
+--- a/lib/handle.c
++++ b/lib/handle.c
+@@ -82,6 +82,7 @@ tar_open(TAR **t, const char *pathname, tartype_t *type,
+ 	(*t)->fd = (*((*t)->type->openfunc))(pathname, oflags, mode);
+ 	if ((*t)->fd == -1)
+ 	{
++		libtar_hash_free((*t)->h, NULL);
+ 		free(*t);
+ 		return -1;
+ 	}
+-- 
+2.10.5.GIT
+

diff --git a/dev-libs/libtar/libtar-1.2.20-r4.ebuild b/dev-libs/libtar/libtar-1.2.20-r4.ebuild
index 5f441bbfa57..eccd392e3ba 100644
--- a/dev-libs/libtar/libtar-1.2.20-r4.ebuild
+++ b/dev-libs/libtar/libtar-1.2.20-r4.ebuild
@@ -33,6 +33,9 @@ PATCHES=(
 	"${FILESDIR}"/${PN}-1.2.11-free.patch
 	"${FILESDIR}"/${PN}-1.2.11-impl-dec.patch
 	"${FILESDIR}"/CVE-2013-4420.patch
+	"${FILESDIR}"/${P}-fd-leaks.patch
+	"${FILESDIR}"/${P}-tar_open-memleak.patch
+	"${FILESDIR}"/${P}-bin-memleaks.patch
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-04-28  6:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-28  6:05 [gentoo-commits] repo/gentoo:master commit in: dev-libs/libtar/files/, dev-libs/libtar/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2018-02-17 13:37 Andreas Sturmlechner
2018-02-17 13:37 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox