summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/minissdpd')
-rw-r--r--net-misc/minissdpd/Manifest3
-rw-r--r--net-misc/minissdpd/files/minissdpd-1.2-remove-initd.patch14
-rw-r--r--net-misc/minissdpd/files/minissdpd-1.2-respect-CC.patch12
-rw-r--r--net-misc/minissdpd/files/minissdpd.confd10
-rw-r--r--net-misc/minissdpd/files/minissdpd.initd-r161
-rw-r--r--net-misc/minissdpd/files/minissdpd.initd-r261
-rw-r--r--net-misc/minissdpd/metadata.xml8
-rw-r--r--net-misc/minissdpd/minissdpd-1.2.20141204.ebuild36
-rw-r--r--net-misc/minissdpd/minissdpd-1.3-r1.ebuild35
-rw-r--r--net-misc/minissdpd/minissdpd-1.3.20150527.ebuild35
-rw-r--r--net-misc/minissdpd/minissdpd-1.3.ebuild36
11 files changed, 311 insertions, 0 deletions
diff --git a/net-misc/minissdpd/Manifest b/net-misc/minissdpd/Manifest
new file mode 100644
index 000000000000..90f2b61deccc
--- /dev/null
+++ b/net-misc/minissdpd/Manifest
@@ -0,0 +1,3 @@
+DIST minissdpd-1.2.20141204.tar.gz 26978 SHA256 f35b14ef9b165bd6b5c44cebc3adbfad92e899d3424c54aea008c5541315abb7 SHA512 73089b616e12ae3ce391f0fa84a6fb09ed61011493d523bd212f02437f59fe8c028127f2839a6b791479d7b821a9ed6786be661ff4b3dc0064f1fbc9b1f9c299 WHIRLPOOL 026e9b10f49bb8a0441178e3b290a5669d982715e5828c73231bdff1366b5ea4d3b92f3e4b412a30b7e9627597b88cadc1b64ef38945bf690712fdabeea390db
+DIST minissdpd-1.3.20150527.tar.gz 31025 SHA256 18d966e01f94c481937d233f69b1a4c60e12e0d6e9e991086142b3f8c44de8bb SHA512 31c6b267ead8c1b3e12681de404de818d80e578151deb6515c5f4a0cf35dadd93de7058d51d371c4e0921549d9ee31d20acabd5baf78df3908262c2547a8e837 WHIRLPOOL b0e83276a92f2e9dc328be706d0a41c84605ba23a553aabc5498167a9122138f2097a6d36f08f75fcbf763d984a682c52479466d267ed889943e2c4d83476ad2
+DIST minissdpd-1.3.tar.gz 30326 SHA256 86476b581efa7640c7e9695dd7e43ccafa26c77e77fd0176d79bc5e8ad117196 SHA512 d05ceaf4151eef10cca8fc5685cff1778d7ef47da8e33ebe4c14977fce4ffb0cfbc6fe6e7f21e7e61c59fe876c722d41060154ec2118b4f24e15e167b46a65fa WHIRLPOOL ee91ec1ab1d16823e1f67dc63aa0ca6d8946b9e66a5003deee131b14a888095acfc345522f3c5e5aea01e0e76844f172703841e5ae65080e182dcacf483f0ad0
diff --git a/net-misc/minissdpd/files/minissdpd-1.2-remove-initd.patch b/net-misc/minissdpd/files/minissdpd-1.2-remove-initd.patch
new file mode 100644
index 000000000000..9a5f5966e90f
--- /dev/null
+++ b/net-misc/minissdpd/files/minissdpd-1.2-remove-initd.patch
@@ -0,0 +1,14 @@
+diff -Naur minissdpd-1.1.20120121.orig//Makefile minissdpd-1.1.20120121/Makefile
+--- minissdpd-1.1.20120121.orig//Makefile 2012-01-02 05:46:24.000000000 -0500
++++ minissdpd-1.1.20120121/Makefile 2012-01-22 07:01:54.000000000 -0500
+@@ -42,10 +42,6 @@
+ $(INSTALL) minissdpd $(SBININSTALLDIR)
+ $(INSTALL) -d $(MANINSTALLDIR)/man1
+ $(INSTALL) minissdpd.1 $(MANINSTALLDIR)/man1/minissdpd.1
+-ifneq ($(OS), Darwin)
+- $(INSTALL) -d $(PREFIX)/etc/init.d
+- $(INSTALL) minissdpd.init.d.script $(PREFIX)/etc/init.d/minissdpd
+-endif
+
+ minissdpd: $(MINISSDPDOBJS)
+ $(CC) $(CFLAGS) -o $@ $(MINISSDPDOBJS)
diff --git a/net-misc/minissdpd/files/minissdpd-1.2-respect-CC.patch b/net-misc/minissdpd/files/minissdpd-1.2-respect-CC.patch
new file mode 100644
index 000000000000..99d8c947fcbd
--- /dev/null
+++ b/net-misc/minissdpd/files/minissdpd-1.2-respect-CC.patch
@@ -0,0 +1,12 @@
+diff -Naur minissdpd-1.2.orig//Makefile minissdpd-1.2/Makefile
+--- minissdpd-1.2.orig//Makefile 2012-05-02 06:26:50.000000000 -0400
++++ minissdpd-1.2/Makefile 2012-05-25 10:02:32.000000000 -0400
+@@ -18,7 +18,7 @@
+ CFLAGS += -fno-strict-aliasing -fno-common
+ CFLAGS += -D_GNU_SOURCE
+ CFLAGS += -ansi
+-CC = gcc
++CC ?= gcc
+ RM = rm -f
+ INSTALL = install
+ OS = $(shell uname -s)
diff --git a/net-misc/minissdpd/files/minissdpd.confd b/net-misc/minissdpd/files/minissdpd.confd
new file mode 100644
index 000000000000..43b662eca182
--- /dev/null
+++ b/net-misc/minissdpd/files/minissdpd.confd
@@ -0,0 +1,10 @@
+# /etc/conf.d/minissdpd: config file for /etc/init.d/minissdpd
+
+# Configure on which interface or interfaces minissdpd will listen.
+# List all interfaces space separated. If this is not specified then
+# minissdpd will listen on just the interface for the default route.
+# You probably want that when running minissdpd with miniupnpc on the
+# client, but you most likely want to specify the internal interface
+# when running with miniupnpd on the gateway.
+#
+# MINISSDPD_IFACE="eth0 eth1"
diff --git a/net-misc/minissdpd/files/minissdpd.initd-r1 b/net-misc/minissdpd/files/minissdpd.initd-r1
new file mode 100644
index 000000000000..d09ed2c5a985
--- /dev/null
+++ b/net-misc/minissdpd/files/minissdpd.initd-r1
@@ -0,0 +1,61 @@
+#!/sbin/runscript
+
+MINISSDPD="/usr/sbin/minissdpd"
+PIDFILE="/var/run/minissdpd.pid"
+
+ROUTE="/bin/route"
+IFCONFIG="/bin/ifconfig"
+
+depend() {
+ need net
+ before miniupnpd
+}
+
+checkconfig() {
+ if [ "x$MINISSDPD_IFACE" != "x" ]; then
+ interfaces=$($IFCONFIG | grep "Link encap" | awk '{ print $1 }')
+ for interface in $MINISSDPD_IFACE; do
+ hit=0
+ for available in $interfaces; do
+ if [ "$interface" = "$available" ]; then
+ hit=1
+ fi
+ done
+ if [ $hit = 0 ]; then
+ ewarn "Interface $interface not available"
+ return 1
+ fi
+ done
+ fi
+ return 0
+}
+
+start() {
+ ebegin "Starting minissdpd"
+ checkconfig || return 1
+
+ if [ "x$MINISSDPD_IFACE" = "x" ]; then
+ # We assume that the default interface has an IP address
+ interface=$($ROUTE | grep default | awk -- '{ print $8 }')
+ IP="$($IFCONFIG $interface | grep 'inet' | sed 's/^.*inet \([0-9.]\+\).\+/\1/')"
+ ARGS="-i $IP "
+ else
+ ARGS=""
+ for interface in $MINISSDPD_IFACE; do
+ # An interface may not have an IP address, so don't listen if it doesn't
+ IP="$($IFCONFIG $interface | grep 'inet' | sed 's/^.*inet \([0-9.]\+\).\+/\1/')"
+ if [ "x$IP" != "x" ]; then
+ ARGS+="-i $IP "
+ fi
+ done
+ fi
+
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $MINISSDPD -- $ARGS
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping minissdpd"
+ start-stop-daemon --stop --pidfile "${PIDFILE}"
+ eend $?
+}
diff --git a/net-misc/minissdpd/files/minissdpd.initd-r2 b/net-misc/minissdpd/files/minissdpd.initd-r2
new file mode 100644
index 000000000000..97f5f4070e5f
--- /dev/null
+++ b/net-misc/minissdpd/files/minissdpd.initd-r2
@@ -0,0 +1,61 @@
+#!/sbin/runscript
+
+MINISSDPD="/usr/sbin/minissdpd"
+PIDFILE="/var/run/minissdpd.pid"
+
+depend() {
+ need net
+ before miniupnpd
+}
+
+interfaceup() {
+ # interface exists?
+ if [ ! -f /sys/class/net/$1/flags ]; then return 1; fi
+ let "IFUP = `cat /sys/class/net/$1/flags` & 1"
+ # interface has UP flag?
+ if [ $IFUP -eq 0 ]; then return 1; fi
+ return 0
+}
+
+# awk script: scans the /proc routing table for local subnets
+# 1. filter list for entries with a gateway (column 3) of 0.0.0.0 (ie interface-local)
+# 2. read column 2 for network-order hex encoded subnet address
+# 3. match against a 10.x.x.x, 172.(16-31).x.x, or 192.168.x.x address
+# 4. print out any interface (column 1) that matches
+privateinterfaces() {
+ awk -f - /proc/net/route <<'FindPrivateNetworks'
+function p(m,n) { return(and(IP,m) == n); }
+$3=="00000000" { IP=strtonum("0x"$2); if (p(0xff,0x0a) || p(0x1fff,0x10ac) || p(0xffff,0xa8c0)) print $1; }
+FindPrivateNetworks
+}
+
+start() {
+ ebegin "Starting minissdpd"
+
+ ARGS=""
+ if [ "x$MINISSDPD_IFACE" = "x" ]; then
+ ewarn "No interfaces provided, using interfaces on private networks"
+ IFLIST=$(privateinterfaces)
+ else
+ IFLIST="$MINISSDPD_IFACE"
+ fi
+
+ eindent
+ for IF in $IFLIST; do
+ if interfaceup $IF; then
+ einfo Adding interface $IF
+ ARGS+="-i $IF "
+ else
+ ewarn "Interface $IF is not up"
+ fi
+ done
+ eoutdent
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $MINISSDPD -- $ARGS
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping minissdpd"
+ start-stop-daemon --stop --pidfile "${PIDFILE}"
+ eend $?
+}
diff --git a/net-misc/minissdpd/metadata.xml b/net-misc/minissdpd/metadata.xml
new file mode 100644
index 000000000000..1e7587374fdf
--- /dev/null
+++ b/net-misc/minissdpd/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>blueness@gentoo.org</email>
+ <name>Anthony G. Basile</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/net-misc/minissdpd/minissdpd-1.2.20141204.ebuild b/net-misc/minissdpd/minissdpd-1.2.20141204.ebuild
new file mode 100644
index 000000000000..3055f5c45d9b
--- /dev/null
+++ b/net-misc/minissdpd/minissdpd-1.2.20141204.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MiniSSDP Daemon"
+SRC_URI="http://miniupnp.free.fr/files/${P}.tar.gz"
+HOMEPAGE="http://miniupnp.free.fr/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=sys-apps/net-tools-1.60_p20120127084908[-old-output]
+ || ( net-misc/miniupnpd net-libs/miniupnpc )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.2-respect-CC.patch"
+ epatch "${FILESDIR}/${PN}-1.2-remove-initd.patch"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install () {
+ einstall PREFIX="${D}"
+ newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
+ dodoc Changelog.txt README
+ doman minissdpd.1
+}
diff --git a/net-misc/minissdpd/minissdpd-1.3-r1.ebuild b/net-misc/minissdpd/minissdpd-1.3-r1.ebuild
new file mode 100644
index 000000000000..2aaba3988386
--- /dev/null
+++ b/net-misc/minissdpd/minissdpd-1.3-r1.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MiniSSDP Daemon"
+SRC_URI="http://miniupnp.free.fr/files/${P}.tar.gz"
+HOMEPAGE="http://miniupnp.free.fr/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="|| ( net-misc/miniupnpd net-libs/miniupnpc )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.2-respect-CC.patch"
+ epatch "${FILESDIR}/${PN}-1.2-remove-initd.patch"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install () {
+ einstall PREFIX="${D}"
+ newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
+ dodoc Changelog.txt README
+ doman minissdpd.1
+}
diff --git a/net-misc/minissdpd/minissdpd-1.3.20150527.ebuild b/net-misc/minissdpd/minissdpd-1.3.20150527.ebuild
new file mode 100644
index 000000000000..47c9ac237cd5
--- /dev/null
+++ b/net-misc/minissdpd/minissdpd-1.3.20150527.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MiniSSDP Daemon"
+SRC_URI="http://miniupnp.free.fr/files/${P}.tar.gz"
+HOMEPAGE="http://miniupnp.free.fr/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="|| ( net-misc/miniupnpd net-libs/miniupnpc )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.2-respect-CC.patch"
+ epatch "${FILESDIR}/${PN}-1.2-remove-initd.patch"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install () {
+ einstall PREFIX="${D}"
+ newinitd "${FILESDIR}/${PN}.initd-r2" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
+ dodoc Changelog.txt README
+ doman minissdpd.1
+}
diff --git a/net-misc/minissdpd/minissdpd-1.3.ebuild b/net-misc/minissdpd/minissdpd-1.3.ebuild
new file mode 100644
index 000000000000..3055f5c45d9b
--- /dev/null
+++ b/net-misc/minissdpd/minissdpd-1.3.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+inherit eutils toolchain-funcs
+
+DESCRIPTION="MiniSSDP Daemon"
+SRC_URI="http://miniupnp.free.fr/files/${P}.tar.gz"
+HOMEPAGE="http://miniupnp.free.fr/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND=">=sys-apps/net-tools-1.60_p20120127084908[-old-output]
+ || ( net-misc/miniupnpd net-libs/miniupnpc )"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-1.2-respect-CC.patch"
+ epatch "${FILESDIR}/${PN}-1.2-remove-initd.patch"
+}
+
+src_compile() {
+ emake CC="$(tc-getCC)"
+}
+
+src_install () {
+ einstall PREFIX="${D}"
+ newinitd "${FILESDIR}/${PN}.initd-r1" ${PN}
+ newconfd "${FILESDIR}/${PN}.confd" ${PN}
+ dodoc Changelog.txt README
+ doman minissdpd.1
+}