summaryrefslogtreecommitdiff
path: root/net-misc/netkit-talk
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /net-misc/netkit-talk
reinit the tree, so we can have metadata
Diffstat (limited to 'net-misc/netkit-talk')
-rw-r--r--net-misc/netkit-talk/Manifest8
-rw-r--r--net-misc/netkit-talk/files/netkit-talk-0.17-ipv6.diff56
-rw-r--r--net-misc/netkit-talk/files/netkit-talk-0.17-time.patch20
-rw-r--r--net-misc/netkit-talk/files/talk.xinetd13
-rw-r--r--net-misc/netkit-talk/metadata.xml5
-rw-r--r--net-misc/netkit-talk/netkit-talk-0.17-r5.ebuild55
6 files changed, 157 insertions, 0 deletions
diff --git a/net-misc/netkit-talk/Manifest b/net-misc/netkit-talk/Manifest
new file mode 100644
index 000000000000..50272bbfd6f6
--- /dev/null
+++ b/net-misc/netkit-talk/Manifest
@@ -0,0 +1,8 @@
+AUX netkit-talk-0.17-ipv6.diff 1587 SHA256 daafeb1643c0bbaddddb1cba61ffd69f6ffed305b337c68ca2fa8e5ee4159833 SHA512 6545182872092864f136f7c5e464435679cf06d5393d587b564cb19930c2a1fc068d737bdc8a4bdcbc8a708c891284d66625ad85efd1d5e60c3cf49abe4215f1 WHIRLPOOL 15e03a224112be06d1f11450b7e816810e026566efc80abb914a91c000ab9ae7e260a3d3261675deddaaaec9dadd2a0cedc9db5cedbac865fb19a430616c3d91
+AUX netkit-talk-0.17-time.patch 385 SHA256 8e3a5ee7c9c0e60783919533a13ebadb7a6c57480b1ae289ed7f87f31175fc35 SHA512 4da0417515e8e357cdc3b5b46b3edaa324dba767ae9dea6aa374ac8e4cf835dc0a4766684edc1e2b254840858721558a1e29940ea95ae274b06ded99fbf5499f WHIRLPOOL 0f2e1f707f513864676e13d6ccf1af451e617f47aef26b19207c059ef3d9f224f73d0770c9d8a344f84544db01adae72e70b48ac49c67a75d9620ecc32c55dce
+AUX talk.xinetd 265 SHA256 6ce5286c8d51ce80c7c0833d4fdbf2f29657ad3dd3c58b6fb6da7b444766baa7 SHA512 f4f29a6e57aa80ffd6acc45b3c4a5bc5086fc6061f8d9bdfbe4fea4f874cedbdd5f85f60e311aa473e53119c16c42289161011699d24b944992aee0aec9ccb1f WHIRLPOOL b69bc470a1040e7fedb3ed62d22166e4da3752dce44cd7e2c7ae783133657791e52eb6ead7ad22febabc4fea723ecd6ce16a01b5a47d154f066476471e7151fd
+DIST netkit-ntalk-0.17.tar.gz 37396 SHA256 d8f614e8d4d7981a0adf0f84d2d3954018d5fe0e57a8e5731256d66cbcf45e90 SHA512 5a886c0f73179060f926d4af781a6b9d4de7b62562a69db7b93c4fd783ad12b488ee967af18e5a11f98e7f94d659c1688d2a3d4ba4a00bdec31869aa39a321c5 WHIRLPOOL 0c37b9dffb1a17e93105ebf56b42f4014bd839abc077d4e8b11aa3d4d49cb8f791bbff704ed6d6b248302b2a8f3554a7093da2f86c9e975424adbaa084e2ca15
+EBUILD netkit-talk-0.17-r5.ebuild 1188 SHA256 a426b87294ca1bfa1a560faae2e5be215aef5b4177348f0ee4cdbae17268bcaf SHA512 01061c29d9e0e1b1e62e3642091f0932022625a78d4dea7945c9cd48493c9dd69c426574d0eb69950904368968d1db997834dd9cb03621b97e879a530c08b4bf WHIRLPOOL 2d976f01a8200365aebf1df3ab8cb614d5172604f20a735cf5ef0cc7db8dd740b81ec0fb0024de19e9105f9f584d3fb28a4ac786e356f778772dfecaa6f27cf0
+MISC ChangeLog 2631 SHA256 79ae7340bc50348e1ed2b0edeb789499040e8a816a4f30ddf0feeb327b35ddc7 SHA512 a2229fd53d7e0e3c042e5e9e95dc6b9154dd02d40bdcb40a1be758f369ec0a8bceabbcc799fe4d5d48bb24a2f1e2cecb1d5b9030028661c4497aada78bc4049d WHIRLPOOL 078ba377c634b033e97d2feb10952dd64c21c5613ef62b48588f3d74023f5ad248a72943182f90ac5a56524d67ac4e2258350c98ab09d37377d6965d6c428df4
+MISC ChangeLog-2015 5331 SHA256 96ec8da96232ef36de2efc1708c6817485e29f0fbe19b481e74b9c530a1197e3 SHA512 e0e509f954de8f9bab4f3dfc18cd092a2df613c55828928e880331357f3e1828b3414eb8991e78f5aa0e6ab74e293103283a34af63bafd48ff53d8ab6baa2412 WHIRLPOOL 859fa3ea231db3ee171d091276c671f4e92097ca4c20a420328508bb9ea4ee60a03b4d5b1bd0c3a1d2f78ab4e14a71a7ec79c477a9ab2b3b7f3eb23fe9c02a43
+MISC metadata.xml 166 SHA256 2caff447f5bd2701d8456ada5cc633c41ef4373fa4bfeabeb73599d40bcc941b SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 WHIRLPOOL 1ff70497eca6531f0e0614c72a19f4b8e5ff486a58d369f4f0b36308d1d6b01168f9da887740e3b9f536236be251d3fe05f904d27a9233a7cf613416ba882968
diff --git a/net-misc/netkit-talk/files/netkit-talk-0.17-ipv6.diff b/net-misc/netkit-talk/files/netkit-talk-0.17-ipv6.diff
new file mode 100644
index 000000000000..f426bf7dfadf
--- /dev/null
+++ b/net-misc/netkit-talk/files/netkit-talk-0.17-ipv6.diff
@@ -0,0 +1,56 @@
+--- a/talkd/talkd.c
++++ b/talkd/talkd.c
+@@ -164,13 +164,14 @@
+ const char *theirip;
+
+ struct hostent *hp;
++ struct sockaddr_in6 addr;
+ struct sockaddr_in sn;
+ int cc, i, ok;
+ socklen_t addrlen;
+
+- addrlen = sizeof(sn);
++ addrlen = sizeof(addr);
+ cc = recvfrom(0, inbuf, sizeof(inbuf), 0,
+- (struct sockaddr *)&sn, &addrlen);
++ (struct sockaddr *)&addr, &addrlen);
+ if (cc<0) {
+ if (errno==EINTR || errno==EAGAIN) {
+ return;
+@@ -185,14 +186,30 @@
+ */
+ lastmsgtime = time(NULL);
+
+- if (addrlen!=sizeof(sn)) {
+- syslog(LOG_WARNING, "recvfrom: bogus address length");
+- return;
+- }
+- if (sn.sin_family!=AF_INET) {
++ sn.sin_family = AF_INET;
++ switch (addr.sin6_family)
++ {
++ case AF_INET:
++ sn.sin_addr=((struct sockaddr_in*)&addr)->sin_addr;
++ sn.sin_port=((struct sockaddr_in*)&addr)->sin_port;
++ break;
++ case AF_INET6:
++ // addr must be ::FFFF:x.x.x.x
++ if (addr.sin6_addr.s6_addr32[0]!=0 ||
++ addr.sin6_addr.s6_addr32[1]!=0 ||
++ addr.sin6_addr.s6_addr16[5]!=0xffff ||
++ addr.sin6_addr.s6_addr16[4]!=0)
++ {
++ syslog(LOG_WARNING, "IPv6 address family not supported by talkd");
++ return;
++ }
++ sn.sin_port=addr.sin6_port;
++ sn.sin_addr.s_addr=addr.sin6_addr.s6_addr32[3];
++ break;
++ default:
+ syslog(LOG_WARNING, "recvfrom: bogus address family");
+ return;
+- }
++ }
+
+ /*
+ * If we get here we have an address we can reply to, although
diff --git a/net-misc/netkit-talk/files/netkit-talk-0.17-time.patch b/net-misc/netkit-talk/files/netkit-talk-0.17-time.patch
new file mode 100644
index 000000000000..3a0ccadcb744
--- /dev/null
+++ b/net-misc/netkit-talk/files/netkit-talk-0.17-time.patch
@@ -0,0 +1,20 @@
+--- a/talkd/table.c
++++ b/talkd/table.c
+@@ -57,6 +57,7 @@
+
+ #include "prot_talkd.h"
+ #include "proto.h"
++#include <time.h>
+
+ #define MAX_ID 16000 /* << 2^15 so I don't have sign troubles */
+
+--- a/talkd/announce.c
++++ b/talkd/announce.c
+@@ -49,6 +49,7 @@
+ #include <fcntl.h>
+ #include <string.h>
+ #include <paths.h>
++#include <time.h>
+ #include "prot_talkd.h"
+ #include "proto.h"
+
diff --git a/net-misc/netkit-talk/files/talk.xinetd b/net-misc/netkit-talk/files/talk.xinetd
new file mode 100644
index 000000000000..524282582b24
--- /dev/null
+++ b/net-misc/netkit-talk/files/talk.xinetd
@@ -0,0 +1,13 @@
+# default: off
+# description: The talk server accepts talk requests for chatting with users \
+# on other systems.
+service ntalk
+{
+# flags = IPv4
+ disable = yes
+ socket_type = dgram
+ wait = yes
+ user = nobody
+ group = tty
+ server = /usr/sbin/in.talkd
+}
diff --git a/net-misc/netkit-talk/metadata.xml b/net-misc/netkit-talk/metadata.xml
new file mode 100644
index 000000000000..6f49eba8f496
--- /dev/null
+++ b/net-misc/netkit-talk/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/net-misc/netkit-talk/netkit-talk-0.17-r5.ebuild b/net-misc/netkit-talk/netkit-talk-0.17-r5.ebuild
new file mode 100644
index 000000000000..c80e21f953ce
--- /dev/null
+++ b/net-misc/netkit-talk/netkit-talk-0.17-r5.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils toolchain-funcs
+
+MY_P=netkit-ntalk-${PV}
+S=${WORKDIR}/netkit-ntalk-${PV}
+
+DESCRIPTION="Netkit - talkd"
+HOMEPAGE="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/"
+SRC_URI="ftp://ftp.uk.linux.org/pub/linux/Networking/netkit/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86"
+IUSE="ipv6"
+
+COMMON_DEPEND=">=sys-libs/ncurses-5.2"
+DEPEND="
+ ${COMMON_DEPEND}
+ virtual/pkgconfig
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ virtual/inetd
+"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-time.patch
+ use ipv6 && epatch "${FILESDIR}"/${P}-ipv6.diff
+ sed -i configure -e '/^LDFLAGS=/d' || die
+}
+
+src_configure() {
+ # not autotools based?
+ ./configure --with-c-compiler=$(tc-getCC) || die
+}
+
+src_compile() {
+ emake LIBCURSES="$( $(tc-getPKG_CONFIG) --libs ncurses )"
+}
+
+src_install() {
+ insinto /etc/xinetd.d
+ newins "${FILESDIR}"/talk.xinetd talk
+ dobin talk/talk
+ doman talk/talk.1
+ dosbin talkd/talkd
+ dosym talkd /usr/sbin/in.talkd
+ doman talkd/talkd.8
+ dosym talkd.8 /usr/share/man/man8/in.talkd.8
+ dodoc README ChangeLog BUGS
+}