From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- net-mail/cmd5checkpw/Manifest | 8 +++ net-mail/cmd5checkpw/cmd5checkpw-0.30-r1.ebuild | 68 +++++++++++++++++++++++++ net-mail/cmd5checkpw/files/euid_030.diff | 49 ++++++++++++++++++ net-mail/cmd5checkpw/files/poppasswd | 3 ++ net-mail/cmd5checkpw/files/reloc.diff | 63 +++++++++++++++++++++++ net-mail/cmd5checkpw/metadata.xml | 8 +++ 6 files changed, 199 insertions(+) create mode 100644 net-mail/cmd5checkpw/Manifest create mode 100644 net-mail/cmd5checkpw/cmd5checkpw-0.30-r1.ebuild create mode 100644 net-mail/cmd5checkpw/files/euid_030.diff create mode 100644 net-mail/cmd5checkpw/files/poppasswd create mode 100644 net-mail/cmd5checkpw/files/reloc.diff create mode 100644 net-mail/cmd5checkpw/metadata.xml (limited to 'net-mail/cmd5checkpw') diff --git a/net-mail/cmd5checkpw/Manifest b/net-mail/cmd5checkpw/Manifest new file mode 100644 index 000000000000..f1a05eef4aef --- /dev/null +++ b/net-mail/cmd5checkpw/Manifest @@ -0,0 +1,8 @@ +AUX euid_030.diff 1107 SHA256 32f1f3294e5df0980290b2fddc008526d8f92850d5d7162a08d359a0891ef9cd SHA512 648ded406e4818ba50597b010cedfae6436e3bbcf0c0e9a982b9656211fea7533dbc759434bade78f4df63e64231529ce4713bdf504244f3fe2e93c8bb5f995f WHIRLPOOL e3a9e2b3245b82c191d412797ddcf65ba98a15f0dfa8935993740237fb319340d7726b4b85ced18b62bc21c616281146becabe1ed2c82a358c3310da160e28c9 +AUX poppasswd 84 SHA256 1effea701373e52beff1b45b2d71ff1c215c4459a1f4c42c5950177c93a014cb SHA512 74eb9764b4c9fd251e9bb408d3ace9bcc30f9d638963cd5f385ee6c2c839f1de51b7f55c81d5e0111b568a308eea08185c8bcc965decf36a963b78bf4aea8671 WHIRLPOOL b2e3636b3c38b6a702147b83eaeec00a4384bea6ad5bebc1a9282fdb6a4a8fafaf7aad433f981eba24ae1930ae967915a8bfd4d694b45e1d05a7702780499e26 +AUX reloc.diff 2330 SHA256 bc75c9aaa7aded7ca662d0d34b956a91e5e5f11c1c89095bdbe4b49344e9bec3 SHA512 e18cab4bb02b2bac945d1857f70d6f5faa2296205f09c228d87d16dffb43de129a59ef0054dd6c54f1db7448b47f46a385dc81ffe769dc87d182d81031920369 WHIRLPOOL 5020371d137dfb89b53b641755b0bf304f470a87c7e3d9cf37801001c33577161d4ede2ac389c4d1f17999ceb4e0c25b26b9f3ebe4a1f3b047bcd69ff585e89c +DIST cmd5checkpw-030_tgz.bin 25812 SHA256 88588e134a498f7efa69ee1d2a217aec7cb65a41b4206100455b5aa40d692f2d SHA512 c54792769097ac7e8a11c6a140a9eefdb090bad4a0336be9543549a232e4faa72f08baea7e746b9743e01ce40c0f7402f4584c53b5eedb3f2d1e457d1c8a45d5 WHIRLPOOL 4057387e78d3a059b17659cb9c0f4a098c36dfb1ba42e8efe377ccc6c912c82768254ec3a2c1fbbeddd78acbdc43c262f65c73a9fbe0a7ebb8e396268a220ff8 +EBUILD cmd5checkpw-0.30-r1.ebuild 1683 SHA256 b492df260527823e33eb51c47414620ce50cc1832046ee88e1f0e9c0957ab1ec SHA512 63ea35fbb395914fef54d289ebf082584107091af5b77facf37a5141521e3501773ab6f964cfbaf6307f91348b0fcf9c1043ed98059d4d8621a4a927948bd2eb WHIRLPOOL 282453d68afd5ebd25b47ccaa9e328154b6743383d497146912bd733f85287a0f076d7b43161530492235f6f649bff2f6af608d548a2f33b406a5728b869af93 +MISC ChangeLog 2504 SHA256 fc9ed34d86ec5740de8c6430c35b98cff0c4d6245b3cc733b13c226d4e582dca SHA512 7e23e40642373dec65617579d288ab2db882a6a1d36229d9a212462d1b6c0d323c241b8fe2c50457212b6e206b7ce4c10085d2b9cf6402030d659be22314888f WHIRLPOOL 2bc103532dc542b78f3ce227ce4b47419c31866d0e569ff5a391fdb698e9b9fbfc25150992ae5c72806b3a2108869cd813174ad07dad7326b60b27daff0a254e +MISC ChangeLog-2015 7584 SHA256 afcdcfde356eb1ee57569f55fabce8894b2863cc65ef219c7ce4f772cc33fcd6 SHA512 18abe69708cb0e81b933d196749059ebdde8b391e7ca5a80428b059ece2b69a82384f4cf6554bbb562fef02bfcfaf37ee3e87655094d840bfed9cbacf1e73c00 WHIRLPOOL 841b4c88af34fba47be3093568f26a3979fc01acaa8e36a12d0c5330d075e0682143e441663148276ce685d23e8e0ad8efa802e37d60801312985ccbc027925b +MISC metadata.xml 244 SHA256 856e819659934229aa18649e0c783b9714fa33065cb5113e7b667ed68392b39a SHA512 0e856f808459b6d83c6eaeee418d87d85385968a39e6c1871a0eb76c04b533bbba16996a6f18613b7c550da90c76843bd01237be9b9f290394048e904535653c WHIRLPOOL 2aa292ef66863766df8920a2ebd497218854f9a41724cdef1d63a93c94620fbea641a688af2bb374673773dd5b1b8afff80867c974f49d5600991ab44f9b8752 diff --git a/net-mail/cmd5checkpw/cmd5checkpw-0.30-r1.ebuild b/net-mail/cmd5checkpw/cmd5checkpw-0.30-r1.ebuild new file mode 100644 index 000000000000..6a2fd0767b51 --- /dev/null +++ b/net-mail/cmd5checkpw/cmd5checkpw-0.30-r1.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +inherit eutils fixheadtails user + +MY_VER="030" + +DESCRIPTION="A checkpassword compatible authentication program that used CRAM-MD5 authentication mode" +SRC_URI="http://www.fehcom.de/qmail/auth/${PN}-${MY_VER}_tgz.bin" +HOMEPAGE="http://www.fehcom.de/qmail/smtpauth.html" + +LICENSE="public-domain RSA" +SLOT="0" +KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 sh sparc x86 ~x86-fbsd" +IUSE="" + +DEPEND="" +RDEPEND="" + +pkg_setup() { + enewuser cmd5checkpw 212 -1 /dev/null bin + ewarn + ewarn "this version is in NO WAY COMPATIBLE with cmd5checkpw-0.2x" + ewarn "it actually receives the authentication credentials" + ewarn "in a different order then the old implementation" + ewarn "see bug #100693 for details" + ewarn "this version IS needed by >=qmail-1.03-r16" + ewarn +} + +src_unpack() { + # The old code moved the file in DISTDIR, which is forbidden. + # It's read-only. + cd "${WORKDIR}" + rm -f ${PN}-${MY_VER}.tar.gz + ln -s "${DISTDIR}"/${PN}-${MY_VER}_tgz.bin ${PN}-${MY_VER}.tar.gz + unpack ./${PN}-${MY_VER}.tar.gz + cd "${S}" + + epatch "${FILESDIR}"/euid_${MY_VER}.diff + epatch "${FILESDIR}"/reloc.diff + + sed -e 's:-c -g -Wall -O3:$(OPTCFLAGS):' -i Makefile + + ht_fix_file Makefile +} + +src_compile() { + emake OPTCFLAGS="${CFLAGS}" || die +} + +src_install() { + insinto /etc + doins "${FILESDIR}"/poppasswd + + exeinto /bin + doexe cmd5checkpw + doman cmd5checkpw.8 + + fowners cmd5checkpw /etc/poppasswd /bin/cmd5checkpw + fperms 400 /etc/poppasswd + fperms u+s /bin/cmd5checkpw +} + +pkg_postinst() { + chmod 400 "${ROOT}"/etc/poppasswd + chown cmd5checkpw "${ROOT}"/etc/poppasswd +} diff --git a/net-mail/cmd5checkpw/files/euid_030.diff b/net-mail/cmd5checkpw/files/euid_030.diff new file mode 100644 index 000000000000..12fa9ecc2e5d --- /dev/null +++ b/net-mail/cmd5checkpw/files/euid_030.diff @@ -0,0 +1,49 @@ +diff -upr cmd5checkpw-0.30.orig/main.c cmd5checkpw-0.30/main.c +--- cmd5checkpw-0.30.orig/main.c 2003-09-18 16:34:01.000000000 +0300 ++++ cmd5checkpw-0.30/main.c 2005-07-31 13:19:25.000000000 +0300 +@@ -5,6 +5,7 @@ + #include + #include + #include ++#include + + #define LINE_MAX 256 + #define SASLUSERFILE "/var/qmail/users/authuser" +@@ -23,10 +24,26 @@ int doit(unsigned char *testlogin, unsig + unsigned char h; + FILE *fp; + int j; +- ++ uid_t uid; ++ gid_t gid; + char *linepnt; + + if ((fp = fopen(SASLUSERFILE, READONLY)) == NULL) _exit(2); ++ ++ uid = getuid(); ++ gid = getgid(); ++ ++ if (gid != getegid()) { ++ if (setegid(gid)) ++ _exit(2); ++ } ++ ++ ++ if (uid && (uid != geteuid())) { ++ if (seteuid(uid)) ++ _exit(2); ++ } ++ + while (fgets(line, LINE_MAX, fp) != NULL) { + if ((linepnt = strchr(line, '\n')) != NULL) { + *linepnt = 0; +@@ -39,7 +56,8 @@ int doit(unsigned char *testlogin, unsig + break; + } + } +- fclose(fp); ++ ++ if (EOF == fclose(fp)) _exit(2); + + if (!found_user) return(1); + diff --git a/net-mail/cmd5checkpw/files/poppasswd b/net-mail/cmd5checkpw/files/poppasswd new file mode 100644 index 000000000000..8fc1d4275ecd --- /dev/null +++ b/net-mail/cmd5checkpw/files/poppasswd @@ -0,0 +1,3 @@ +# Format of this file is one user:pass per line +# Like so... +# joedogger:sm311yf33t diff --git a/net-mail/cmd5checkpw/files/reloc.diff b/net-mail/cmd5checkpw/files/reloc.diff new file mode 100644 index 000000000000..7472436bf469 --- /dev/null +++ b/net-mail/cmd5checkpw/files/reloc.diff @@ -0,0 +1,63 @@ +diff -upr cmd5checkpw-0.30.orig/Makefile cmd5checkpw-0.30/Makefile +--- cmd5checkpw-0.30.orig/Makefile 2003-09-18 16:34:01.000000000 +0300 ++++ cmd5checkpw-0.30/Makefile 2005-07-31 14:41:16.000000000 +0300 +@@ -14,7 +14,7 @@ CFLAGS=-c -g -Wall -O3 + LD=gcc + LDFLAGS=-g -o ${TARGET} + +-default: main man cmd5checkpw ++default: cmd5checkpw + + main: cmd5checkpw.c conf-qmail + sed s}QMAILHOME}"`head -1 conf-qmail`"}g cmd5checkpw.c > main.c +diff -upr cmd5checkpw-0.30.orig/cmd5checkpw.8 cmd5checkpw-0.30/cmd5checkpw.8 +--- cmd5checkpw-0.30.orig/cmd5checkpw.8 2003-09-18 16:34:01.000000000 +0300 ++++ cmd5checkpw-0.30/cmd5checkpw.8 2005-07-31 14:43:20.000000000 +0300 +@@ -26,7 +26,7 @@ and a cram-md5 challenge terminated by \ + .B cmd5checkpw + recalcuates a MD5 digest using the provided plain challenge + and the passwords from +-.IR /var/qmail/users/authuser ++.IR /etc/poppasswd + and compares it with response (2nd parameter). If they are the same + then + .B cmd5checkpw +@@ -50,7 +50,7 @@ exits 111. + + .B cmd5checkpw + additionally compares the supplied password with the password in the +-.IR /var/qmail/user/authuser ++.IR /etc/poppasswd + file. Thus it can be used as a plain-text checkpassword + for PLAIN & LOGIN authtype (but we recommend using a crypted version for + security reasons). To use it, simply provide it with clear text password +@@ -68,7 +68,7 @@ interface. + Before invoking + .BR subprogram , + .B cmd5checkpw +-does not set up anything. Just because users from /var/qmail/user/authuser does not ++does not set up anything. Just because users from /etc/poppasswd does not + have to exist in the system so setting their uid,gid etc is not possible. + + Other +@@ -78,7 +78,7 @@ These effects must be documented; + applications will differ in their requirements. + + .SH "FILES" +-.IR /var/qmail/users/authuser ++.IR /etc/poppasswd + - this file contains pairs of logins and clear text passwords + separated by ":". It looks like this: + +diff -upr cmd5checkpw-0.30.orig/main.c cmd5checkpw-0.30/main.c +--- cmd5checkpw-0.30.orig/main.c 2003-09-18 16:34:01.000000000 +0300 ++++ cmd5checkpw-0.30/main.c 2005-07-31 14:43:36.000000000 +0300 +@@ -7,7 +7,7 @@ + #include + + #define LINE_MAX 256 +-#define SASLUSERFILE "/var/qmail/users/authuser" ++#define SASLUSERFILE "/etc/poppasswd" + #define READONLY "r" + char up[513]; + int uplen; diff --git a/net-mail/cmd5checkpw/metadata.xml b/net-mail/cmd5checkpw/metadata.xml new file mode 100644 index 000000000000..1c3bc7b3fcef --- /dev/null +++ b/net-mail/cmd5checkpw/metadata.xml @@ -0,0 +1,8 @@ + + + + + net-mail@gentoo.org + Net-Mail + + -- cgit v1.2.3