summaryrefslogtreecommitdiff
path: root/net/libupnp
diff options
context:
space:
mode:
authorrh <rh@pkgsrc.org>2006-06-03 23:29:24 +0000
committerrh <rh@pkgsrc.org>2006-06-03 23:29:24 +0000
commit8d9c8e6b93bac4b7aedeb5170ac723bfaddf0655 (patch)
treeb3d9bb8b8e70f646aa6c904ee83c45c4979be2b7 /net/libupnp
parente5eb2c56afcaf66f9ed3c7848573a343132b82b0 (diff)
downloadpkgsrc-8d9c8e6b93bac4b7aedeb5170ac723bfaddf0655.tar.gz
Initial import of libupnp-1.3.1, a universal plug and play (UPnP) SDK.
Diffstat (limited to 'net/libupnp')
-rw-r--r--net/libupnp/DESCR10
-rw-r--r--net/libupnp/Makefile34
-rw-r--r--net/libupnp/PLIST16
-rw-r--r--net/libupnp/distinfo11
-rw-r--r--net/libupnp/patches/patch-aa12
-rw-r--r--net/libupnp/patches/patch-ab53
-rw-r--r--net/libupnp/patches/patch-ac14
-rw-r--r--net/libupnp/patches/patch-ad12
-rw-r--r--net/libupnp/patches/patch-ae13
-rw-r--r--net/libupnp/patches/patch-af17
10 files changed, 192 insertions, 0 deletions
diff --git a/net/libupnp/DESCR b/net/libupnp/DESCR
new file mode 100644
index 00000000000..b266d8145c9
--- /dev/null
+++ b/net/libupnp/DESCR
@@ -0,0 +1,10 @@
+ The portable SDK for UPnP* Devices (libupnp) provides developers with an
+API and open source code for building control points, devices, and bridges
+that are compliant with Version 1.0 of the Universal Plug and Play Device
+Architecture Specification and support several operating systems like
+Linux, *BSD, Solaris and others.
+
+ UPnP is an architecture that enables discovery, event notification, and
+control of devices on a network, independent of operating system,
+programming language, or physical network connection. UPnP is based on
+common Internet standards and specifications such as TCP/IP, HTTP, and XML.
diff --git a/net/libupnp/Makefile b/net/libupnp/Makefile
new file mode 100644
index 00000000000..074c94e273f
--- /dev/null
+++ b/net/libupnp/Makefile
@@ -0,0 +1,34 @@
+# $NetBSD: Makefile,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+#
+
+DISTNAME= libupnp-1.3.1
+CATEGORIES= net
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=pupnp/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://pupnp.sourceforge.net/
+COMMENT= Portable Universal Plug and Play (UPnP) SDK
+
+USE_LANGUAGES= c c++
+USE_TOOLS+= pkg-config
+USE_PKGLOCALEDIR= yes
+USE_LIBTOOL= yes
+GNU_CONFIGURE= yes
+
+PKGCONFIG_OVERRIDE+= libupnp.pc.in
+
+pre-configure:
+.if !exists(/usr/include/malloc.h)
+ ${LN} -s /usr/include/stdlib.h ${BUILDLINK_DIR}/include/malloc.h
+.endif
+.if !exists(/usr/include/sys/sysinfo.h)
+ ${MKDIR} -p ${BUILDLINK_DIR}/include/sys
+ ${TOUCH} ${BUILDLINK_DIR}/include/sys/sysinfo.h
+.endif
+.if !exists(/usr/include/linux/if.h)
+ ${MKDIR} -p ${BUILDLINK_DIR}/include/linux
+ ${LN} -s /usr/include/net/if.h ${BUILDLINK_DIR}/include/linux/if.h
+.endif
+
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/net/libupnp/PLIST b/net/libupnp/PLIST
new file mode 100644
index 00000000000..c92ab14ccfe
--- /dev/null
+++ b/net/libupnp/PLIST
@@ -0,0 +1,16 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+include/upnp/FreeList.h
+include/upnp/LinkedList.h
+include/upnp/ThreadPool.h
+include/upnp/TimerThread.h
+include/upnp/iasnprintf.h
+include/upnp/ithread.h
+include/upnp/ixml.h
+include/upnp/upnp.h
+include/upnp/upnpconfig.h
+include/upnp/upnptools.h
+lib/libixml.la
+lib/libthreadutil.la
+lib/libupnp.la
+lib/pkgconfig/libupnp.pc
+@dirrm include/upnp
diff --git a/net/libupnp/distinfo b/net/libupnp/distinfo
new file mode 100644
index 00000000000..460e8998cfb
--- /dev/null
+++ b/net/libupnp/distinfo
@@ -0,0 +1,11 @@
+$NetBSD: distinfo,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+SHA1 (libupnp-1.3.1.tar.gz) = a1fc5a0b250da80e249dbed6aba836b9a2b08972
+RMD160 (libupnp-1.3.1.tar.gz) = 9e02a9189576eedeb336c9af79f068e933d49d55
+Size (libupnp-1.3.1.tar.gz) = 734692 bytes
+SHA1 (patch-aa) = 117d657657f1aae4597bb2f9a0d187dfa90c8c83
+SHA1 (patch-ab) = 92c0927e638e2524dfe0190cfb8cf236c6f10903
+SHA1 (patch-ac) = 36f7d2bc43966efbde399c832f6e186900eaaab3
+SHA1 (patch-ad) = 48cf5476743acd415996dc3b065cc7d3cf9b4dbb
+SHA1 (patch-ae) = e60148122ddd01f8c1020235c58ec7fa3cf7b179
+SHA1 (patch-af) = f039c49bb8dbd27e714895824eab4a18d442dce3
diff --git a/net/libupnp/patches/patch-aa b/net/libupnp/patches/patch-aa
new file mode 100644
index 00000000000..3afdabbf0d3
--- /dev/null
+++ b/net/libupnp/patches/patch-aa
@@ -0,0 +1,12 @@
+$NetBSD: patch-aa,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+--- upnp/inc/upnp.h.orig 2006-03-06 03:24:24.000000000 +1000
++++ upnp/inc/upnp.h
+@@ -37,6 +37,7 @@
+ //@{
+
+ #include <stdio.h>
++#include <time.h>
+ #include "ixml.h"
+ #include "upnpconfig.h"
+ #if UPNP_HAVE_DEBUG
diff --git a/net/libupnp/patches/patch-ab b/net/libupnp/patches/patch-ab
new file mode 100644
index 00000000000..6b842a793d9
--- /dev/null
+++ b/net/libupnp/patches/patch-ab
@@ -0,0 +1,53 @@
+$NetBSD: patch-ab,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+--- upnp/src/genlib/net/sock.c.orig 2006-02-23 07:38:03.000000000 +1000
++++ upnp/src/genlib/net/sock.c
+@@ -49,6 +49,10 @@
+ #include <unistd.h>
+ #include "unixutil.h"
+
++#ifndef MSG_NOSIGNAL
++#define MSG_NOSIGNAL 0
++#endif
++
+ /************************************************************************
+ * Function : sock_init
+ *
+@@ -223,6 +227,15 @@ sock_read_write( IN SOCKINFO * info,
+ }
+ }
+
++#ifdef SO_NOSIGPIPE
++ {
++ int old;
++ int set = 1;
++ socklen_t olen = sizeof(old);
++ getsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &old, &olen);
++ setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &set, sizeof(set));
++#endif
++
+ if( bRead ) {
+ // read data
+ numBytes = recv( sockfd, buffer, bufsize, MSG_NOSIGNAL );
+@@ -235,6 +248,9 @@ sock_read_write( IN SOCKINFO * info,
+ send( sockfd, buffer + bytes_sent, byte_left,
+ MSG_DONTROUTE | MSG_NOSIGNAL );
+ if( num_written == -1 ) {
++#ifdef SO_NOSIGPIPE
++ setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &old, olen);
++#endif
+ return num_written;
+ }
+
+@@ -245,6 +261,11 @@ sock_read_write( IN SOCKINFO * info,
+ numBytes = bytes_sent;
+ }
+
++#ifdef SO_NOSIGPIPE
++ setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &old, olen);
++ }
++#endif
++
+ if( numBytes < 0 ) {
+ return UPNP_E_SOCKET_ERROR;
+ }
diff --git a/net/libupnp/patches/patch-ac b/net/libupnp/patches/patch-ac
new file mode 100644
index 00000000000..ef9be6144ac
--- /dev/null
+++ b/net/libupnp/patches/patch-ac
@@ -0,0 +1,14 @@
+$NetBSD: patch-ac,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+--- upnp/src/uuid/sysdep.c.orig 2006-02-23 07:38:04.000000000 +1000
++++ upnp/src/uuid/sysdep.c
+@@ -145,7 +145,9 @@ get_random_info( char seed[16] )
+ {
+ MD5_CTX c;
+ typedef struct {
++#ifdef _SYS_SYSINFO_H
+ struct sysinfo s;
++#endif
+ struct timeval t;
+ char hostname[257];
+ } randomness;
diff --git a/net/libupnp/patches/patch-ad b/net/libupnp/patches/patch-ad
new file mode 100644
index 00000000000..aa671a2c3e2
--- /dev/null
+++ b/net/libupnp/patches/patch-ad
@@ -0,0 +1,12 @@
+$NetBSD: patch-ad,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+--- upnp/src/inc/upnpapi.h.orig 2006-02-18 23:50:55.000000000 +1000
++++ upnp/src/inc/upnpapi.h
+@@ -160,7 +160,6 @@ void UpnpThreadDistribution(struct UpnpN
+ void AutoAdvertise(void *input);
+ int getlocalhostname(char *out);
+
+-virtualDirList *pVirtualDirList;
+ extern WebServerState bWebServerState;
+
+ #endif
diff --git a/net/libupnp/patches/patch-ae b/net/libupnp/patches/patch-ae
new file mode 100644
index 00000000000..f640d70e78e
--- /dev/null
+++ b/net/libupnp/patches/patch-ae
@@ -0,0 +1,13 @@
+$NetBSD: patch-ae,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+--- upnp/src/api/upnpapi.c.orig 2006-03-01 08:27:59.000000000 +1000
++++ upnp/src/api/upnpapi.c
+@@ -68,6 +68,8 @@
+ /*
+ ****************** */
+
++virtualDirList *pVirtualDirList;
++
+ //Mutex to synchronize the subscription handling at the client side
+ CLIENTONLY( ithread_mutex_t GlobalClientSubscribeMutex;
+ )
diff --git a/net/libupnp/patches/patch-af b/net/libupnp/patches/patch-af
new file mode 100644
index 00000000000..13dda887801
--- /dev/null
+++ b/net/libupnp/patches/patch-af
@@ -0,0 +1,17 @@
+$NetBSD: patch-af,v 1.1.1.1 2006/06/03 23:29:24 rh Exp $
+
+--- threadutil/src/ThreadPool.c.orig 2006-02-28 07:48:27.000000000 +1000
++++ threadutil/src/ThreadPool.c
+@@ -339,9 +339,11 @@ tp->stats.totalJobsLQ++; tp->stats.total
+ *****************************************************************************/
+ static void SetSeed( ) {
+ struct timeb t;
++ volatile union { volatile pthread_t tid; volatile unsigned i; } idu;
+
+ ftime( &t );
+- srand( ( unsigned int )t.millitm + ithread_get_current_thread_id( ) );
++ idu.tid = ithread_get_current_thread_id();
++ srand( ( unsigned int )t.millitm + idu.i );
+ }
+
+ /****************************************************************************