diff options
author | Sam James <sam@gentoo.org> | 2024-10-15 01:45:34 +0100 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2024-10-15 01:50:12 +0100 |
commit | 4bea395ee50cc2b22c8da8a6698febed0065e940 (patch) | |
tree | 5022c21d47b1f50cb0be22bef51a6df95392a26f /net-proxy/wwwoffle | |
parent | dev-util/maturin: bdepend on >=rust-1.74 (diff) | |
download | gentoo-4bea395ee50cc2b22c8da8a6698febed0065e940.tar.gz gentoo-4bea395ee50cc2b22c8da8a6698febed0065e940.tar.bz2 gentoo-4bea395ee50cc2b22c8da8a6698febed0065e940.zip |
net-proxy/wwwoffle: add 2.9j
Bug: https://bugs.gentoo.org/874894
Closes: https://bugs.gentoo.org/765094
Closes: https://bugs.gentoo.org/926194
Closes: https://bugs.gentoo.org/940608
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-proxy/wwwoffle')
-rw-r--r-- | net-proxy/wwwoffle/Manifest | 1 | ||||
-rw-r--r-- | net-proxy/wwwoffle/files/wwwoffle-2.9j-lto.patch | 65 | ||||
-rw-r--r-- | net-proxy/wwwoffle/wwwoffle-2.9j.ebuild | 112 |
3 files changed, 178 insertions, 0 deletions
diff --git a/net-proxy/wwwoffle/Manifest b/net-proxy/wwwoffle/Manifest index c2845c06b0b1..8d5bc86b7bd2 100644 --- a/net-proxy/wwwoffle/Manifest +++ b/net-proxy/wwwoffle/Manifest @@ -1 +1,2 @@ DIST wwwoffle-2.9i.tgz 1113771 BLAKE2B 5acf6e14f362fe87d8f91599aaf113ce8ea5a178ed08eb21d4371d0edfc77a5c0a38e8e0053b51cf6426b0b701ba4fbbddfc84240161877a892aa2da303a5ecf SHA512 c9e9d67df9a0e40b584916857221a9a728f36a677cba28527f8c2febea1a23379d3b112d96723bf01ec1718a0897d8980715864ac7ef898b2585dd3f01d9a456 +DIST wwwoffle-2.9j.tgz 1110599 BLAKE2B cc12a1043c2047f8150883871e112007f9cd028ae961e3495332c4afc06342f0b85c44d0c08ce204907c7abbdb3660afe15d0d146dde39fc914942f9ec492a9d SHA512 03f3177fac563ecab33288d1c193d3e193ff1c07413151fc5db1b85e0111b10815d572bcc59d188145b2851e57be0327f7c9e7538361a36e1a9457aa0d028818 diff --git a/net-proxy/wwwoffle/files/wwwoffle-2.9j-lto.patch b/net-proxy/wwwoffle/files/wwwoffle-2.9j-lto.patch new file mode 100644 index 000000000000..7dde7797ce0e --- /dev/null +++ b/net-proxy/wwwoffle/files/wwwoffle-2.9j-lto.patch @@ -0,0 +1,65 @@ +https://bugs.gentoo.org/940608 + +Sent via email to upstream by sam on 2024-10-15. +--- a/src/testprogs/test-gif.c ++++ b/src/testprogs/test-gif.c +@@ -19,8 +19,8 @@ + #include "errors.h" + + +-ssize_t wwwoffles_read_data(char *data,int len); +-ssize_t wwwoffles_write_data(char *data,int len); ++ssize_t wwwoffles_read_data(char *data,size_t len); ++ssize_t wwwoffles_write_data(char *data,size_t len); + + int main(int argc,char **argv) + { +@@ -55,7 +55,7 @@ int main(int argc,char **argv) + This function is used as a callback from gifmodify.c and htmlmodify.l + ++++++++++++++++++++++++++++++++++++++*/ + +-ssize_t wwwoffles_read_data(char *data,int len) ++ssize_t wwwoffles_read_data(char *data,size_t len) + { + int n=read_data(0,data,len); + +@@ -75,7 +75,7 @@ ssize_t wwwoffles_read_data(char *data,int len) + This function is used as a callback from gifmodify.c and htmlmodify.l + ++++++++++++++++++++++++++++++++++++++*/ + +-ssize_t wwwoffles_write_data(char *data,int len) ++ssize_t wwwoffles_write_data(char *data,size_t len) + { + write_data(1,data,len); + +--- a/src/testprogs/test-modify.c ++++ b/src/testprogs/test-modify.c +@@ -21,8 +21,8 @@ + #include "errors.h" + + +-ssize_t wwwoffles_read_data(char *data,int len); +-ssize_t wwwoffles_write_data(char *data,int len); ++ssize_t wwwoffles_read_data(char *data,size_t len); ++ssize_t wwwoffles_write_data(char *data,size_t len); + + int main(int argc,char **argv) + { +@@ -72,7 +72,7 @@ int main(int argc,char **argv) + This function is used as a callback from gifmodify.c and htmlmodify.l + ++++++++++++++++++++++++++++++++++++++*/ + +-ssize_t wwwoffles_read_data(char *data,int len) ++ssize_t wwwoffles_read_data(char *data,size_t len) + { + int n=read_data(0,data,len); + +@@ -92,7 +92,7 @@ ssize_t wwwoffles_read_data(char *data,int len) + This function is used as a callback from gifmodify.c and htmlmodify.l + ++++++++++++++++++++++++++++++++++++++*/ + +-ssize_t wwwoffles_write_data(char *data,int len) ++ssize_t wwwoffles_write_data(char *data,size_t len) + { + write_data(1,data,len); + diff --git a/net-proxy/wwwoffle/wwwoffle-2.9j.ebuild b/net-proxy/wwwoffle/wwwoffle-2.9j.ebuild new file mode 100644 index 000000000000..df9f7824e828 --- /dev/null +++ b/net-proxy/wwwoffle/wwwoffle-2.9j.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="Web caching proxy suitable for non-permanent Internet connections" +HOMEPAGE="https://www.gedanken.org.uk/software/wwwoffle/" +SRC_URI="https://www.gedanken.org.uk/software/${PN}/download/${P}.tgz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="gnutls ipv6 zlib" + +RDEPEND=" + acct-group/wwwoffle + acct-user/wwwoffle + gnutls? ( net-libs/gnutls:= ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + app-alternatives/lex + dev-lang/perl +" +# Unsure whether to depend on >=www-misc/htdig-3.1.6-r4 or not + +PATCHES=( + "${FILESDIR}"/${PN}-2.9j-lto.patch +) + +src_prepare() { + default + + sed -e 's#$(TAR) xpf #$(TAR) --no-same-owner -xpf #' -i cache/Makefile.in || die +} + +src_configure() { + local myeconfargs=( + --with-ipv6 + $(use_with gnutls) + $(use_with zlib) + ) + + CONFIG_SHELL="${BROOT}"/bin/bash econf "${myeconfargs[@]}" +} + +src_install() { + default + + keepdir /var/spool/wwwoffle/search/hyperestraier/db + + # documentation fix + # del empty doc dirs + rmdir "${ED}/usr/doc/${PN}"/{it,nl,ru} || die + dodir /usr/share/doc + mv "${ED}/usr/doc/${PN}" "${ED}/usr/share/doc/${PF}" || die + rmdir "${ED}/usr/doc" || die + + # install the wwwoffled init script + newinitd "${FILESDIR}/${PN}.initd" wwwoffled + newinitd "${FILESDIR}/${PN}-online.initd" wwwoffled-online + newconfd "${FILESDIR}/${PN}-online.confd" wwwoffled-online + + keepdir /var/spool/wwwoffle/{http,outgoing,monitor,lasttime,lastout,local} + for number in 1 2 3 4 5 6 7 8 9; do + keepdir "/var/spool/wwwoffle/prevtime${number}" "/var/spool/wwwoffle/prevout${number}" + done + + # empty dirs are removed during update + keepdir /var/spool/wwwoffle/search/{mnogosearch/db,htdig/tmp,htdig/db-lasttime,htdig/db,namazu/db} + + touch "${ED}/var/spool/wwwoffle/search/htdig/wwwoffle-htdig.log" + touch "${ED}/var/spool/wwwoffle/search/mnogosearch/wwwoffle-mnogosearch.log" + touch "${ED}/var/spool/wwwoffle/search/namazu/wwwoffle-namazu.log" + + # TODO htdig indexing as part of initscripts + + # robots.txt modification - /var/spool/wwwoffle/html/en + # - remove Disallow: /index + sed -e "s|Disallow:.*/index|#Disallow: /index|" -i "${ED}/var/spool/wwwoffle/html/en/robots.txt" || die +} + +pkg_preinst() { + # Changing the user:group to wwwoffle:woffle + fowners -R wwwoffle:wwwoffle /var/spool/wwwoffle /etc/wwwoffle + sed \ + -e 's/^[# \t]\(run-[gu]id[ \t]*=[ \t]*\)[a-zA-Z0-9]*[ \t]*$/ \1wwwoffle/g' \ + -i "${ED}/etc/wwwoffle/wwwoffle.conf" || die + +} + +pkg_postinst() { + # fix permissions for those upgrading + local number + for number in 1 2 3 4 5 6 7 8 9; + do + [[ ! -d "${EROOT}/var/spool/wwwoffle/prevtime${number}" ]] && \ + keepdir "${EROOT}/var/spool/wwwoffle/prevtime${number}" + [[ ! -d "${EROOT}/var/spool/wwwoffle/prevout${number}" ]] && \ + keepdir "${EROOT}/var/spool/wwwoffle/prevout${number}" + done + + [[ -f "${T}/stopped" ]] && ewarn "wwwoffled was stopped. /etc/init.d/wwwoffled start to restart AFTER etc-update" + + einfo "wwwoffled should run as an ordinary user now. The run-uid and run-gid should be set" + einfo "to \"wwwoffle\" in your /etc/wwwoffle/wwwoffle.conf. Please uncomment this if it hasn't been already" + + einfo "This is for your own security. Otherwise wwwoffle is run as root which is relay bad if" + einfo "there is an exploit in this program that allows remote/local users to execute arbitary" + einfo "commands as the root user." +} |