Compare commits
148 Commits
branch-1.4
...
release-1.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
84692a6e84 | ||
|
|
2a76749682 | ||
|
|
e4bcf18599 | ||
|
|
c856356414 | ||
|
|
6acffb7ede | ||
|
|
837f31bacd | ||
|
|
5151d45203 | ||
|
|
114389589d | ||
|
|
b817ec5152 | ||
|
|
d9de9a486c | ||
|
|
13ebb40e08 | ||
|
|
b614c81e94 | ||
|
|
53766465a9 | ||
|
|
9bc187d4c6 | ||
|
|
80517f26a6 | ||
|
|
468cb2a908 | ||
|
|
d71db4c57c | ||
|
|
947dfd9a85 | ||
|
|
8f7fd0fc6d | ||
|
|
81635d74c1 | ||
|
|
d8ba182d85 | ||
|
|
0a41ee988b | ||
|
|
907eb0636a | ||
|
|
80fc7c3bb0 | ||
|
|
83fb96fbe2 | ||
|
|
4e1240a0a8 | ||
|
|
2c1dba2942 | ||
|
|
4ceb6c67d1 | ||
|
|
3fa207984a | ||
|
|
b82c9c6009 | ||
|
|
b1f6e83380 | ||
|
|
00a33f5788 | ||
|
|
dfec187e88 | ||
|
|
dee3e96a63 | ||
|
|
23e8160417 | ||
|
|
99e11d4fd5 | ||
|
|
fb4e7f659d | ||
|
|
28799f26c9 | ||
|
|
c1e5e4d6a4 | ||
|
|
c0d9908afe | ||
|
|
e80cc3ac64 | ||
|
|
e04192e1d0 | ||
|
|
bbe85ef599 | ||
|
|
5c0893928c | ||
|
|
948c959be5 | ||
|
|
f8c4d81ee5 | ||
|
|
286a45d4ad | ||
|
|
59e0e015be | ||
|
|
bdda54a66b | ||
|
|
41cb45146c | ||
|
|
2c2a5f7c18 | ||
|
|
047b9534bb | ||
|
|
88076a3c4b | ||
|
|
c3060e0d0b | ||
|
|
2ac3819f8c | ||
|
|
0d451c9c8e | ||
|
|
bbd16d75ed | ||
|
|
a225d3b54e | ||
|
|
08834bf0f0 | ||
|
|
e31fcce11d | ||
|
|
dce8f71256 | ||
|
|
7a359f29e3 | ||
|
|
ed9a594e73 | ||
|
|
039b5fdae6 | ||
|
|
f07bcb749f | ||
|
|
f64c539395 | ||
|
|
cab8e4f799 | ||
|
|
2331839f69 | ||
|
|
363ac6e007 | ||
|
|
5c4e45fb4d | ||
|
|
436bc8fc6d | ||
|
|
c6d3d63223 | ||
|
|
ae7ca6a2cf | ||
|
|
9595ddcf3a | ||
|
|
fd19d54144 | ||
|
|
17db87ab96 | ||
|
|
3b12ced1f8 | ||
|
|
4abbd5a8a4 | ||
|
|
836069f43b | ||
|
|
353a876a54 | ||
|
|
2bc6a1f8dd | ||
|
|
1d9e8712b7 | ||
|
|
819ad1f365 | ||
|
|
e9e8ea5636 | ||
|
|
14f72e1442 | ||
|
|
ae13c481a7 | ||
|
|
38a91fdaec | ||
|
|
87f336c940 | ||
|
|
74d2b0049b | ||
|
|
635d6ffa93 | ||
|
|
8c56f16607 | ||
|
|
5d3ef166c1 | ||
|
|
a4072c19b1 | ||
|
|
1716c7a10d | ||
|
|
83782e8ae2 | ||
|
|
f1cc7db79d | ||
|
|
e69d5a8609 | ||
|
|
16637892e3 | ||
|
|
d19a57c866 | ||
|
|
8c21b2c4d9 | ||
|
|
736efca5dd | ||
|
|
d5449dc948 | ||
|
|
7c49b3b8a4 | ||
|
|
5c03ebe6e1 | ||
|
|
d17eb5fcfc | ||
|
|
8625298899 | ||
|
|
864d3db0ad | ||
|
|
1d4d1ff87e | ||
|
|
a26769b27b | ||
|
|
fbbec55457 | ||
|
|
8245b0d808 | ||
|
|
815d08420a | ||
|
|
1d0ce01f31 | ||
|
|
947896bcee | ||
|
|
7ed934d858 | ||
|
|
4a7708331c | ||
|
|
ab66940a89 | ||
|
|
ebac5fe596 | ||
|
|
11de68d0e3 | ||
|
|
dfe3071af4 | ||
|
|
cd50cb678f | ||
|
|
f13fd3d522 | ||
|
|
927b86545f | ||
|
|
a155612cba | ||
|
|
df3df9eaed | ||
|
|
eefeb86a96 | ||
|
|
0452011b99 | ||
|
|
a20707485d | ||
|
|
ec86a6f92b | ||
|
|
89e7a40fcc | ||
|
|
90c3db2a96 | ||
|
|
cf9ae4f6e5 | ||
|
|
f28f81f820 | ||
|
|
bcaba51f57 | ||
|
|
4c5b61dc55 | ||
|
|
9147c3517e | ||
|
|
cbefc2ff49 | ||
|
|
863e743c41 | ||
|
|
26bde09028 | ||
|
|
bc2941c2a7 | ||
|
|
40186d3e9c | ||
|
|
01d26f8f74 | ||
|
|
b2cb458ee3 | ||
|
|
16da6980d1 | ||
|
|
211973749c | ||
|
|
a22ba2f159 | ||
|
|
142929623d | ||
|
|
3170fbd730 |
112
ChangeLog
112
ChangeLog
@@ -1,7 +1,57 @@
|
|||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
Version 1.4.7
|
Version 1.6.0
|
||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
|
|
||||||
|
2007-06-10 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
||||||
|
* More fixes to Mac OS X and NetBSD from Rene Hexel:
|
||||||
|
[pupnp-devel] NetBSD & Mac OS X packages and patches
|
||||||
|
|
||||||
|
Okay, I found a couple more things. I have attached a patch file
|
||||||
|
against the trunk (version 206) that make the repository code compile
|
||||||
|
and run on both Mac OS X and NetBSD.
|
||||||
|
|
||||||
|
This fixes the following issues:
|
||||||
|
|
||||||
|
upnp/src/api/upnpapi.c: SIOCGIFCONF didn't work properly, use
|
||||||
|
getifaddrs() instead (on BSD systems).
|
||||||
|
|
||||||
|
threadutil/src/ThreadPool.c: priorities only work if
|
||||||
|
_POSIX_PRIORITY_SCHEDULING is defined (and greater than 0).
|
||||||
|
|
||||||
|
threadutil/src/LinkedList.c and threadutil/src/iasnprintf.c: use
|
||||||
|
stdlib.h instead of malloc.h on all BSD systems (not just FreeBSD).
|
||||||
|
This is important, because malloc.h does not exist on Darwin/Mac OS X.
|
||||||
|
|
||||||
|
Cheers
|
||||||
|
,
|
||||||
|
Rene
|
||||||
|
|
||||||
|
2007-06-09 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
||||||
|
* [pupnp-devel] NetBSD & Mac OS X packages and patches.
|
||||||
|
Rene Hexel's <rh@netbsd.org> patch to compile in NetBSD and Mac OS X.
|
||||||
|
|
||||||
|
2007-05-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
||||||
|
* Updated the macro files acx_pthread.m4, ax_cflags_gcc_option.m4,
|
||||||
|
ax_cflags_warn_all.m4, m4/ax_cflags_warn_all_ansi.m4,
|
||||||
|
m4/type_socklen_t.m4.
|
||||||
|
|
||||||
|
2007-05-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
||||||
|
* Fixed an issue with the instalation of the file upnpdebug.h. Since
|
||||||
|
the last modifications that removed the macro DEBUV_ONLY, this file
|
||||||
|
must be installed even on a non-debug build.
|
||||||
|
|
||||||
|
2007-05-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
||||||
|
* SF Bug Tracker [ 1711325 ] Bad DestAddr in Upnp_Discovery structure
|
||||||
|
Submitted By: Bob Ciora
|
||||||
|
The field DestAddr of the structure Upnp_Discovery is now a full
|
||||||
|
SOCKADDRIN instead of a pointer to SOCKADDRIN. Commented code sugests
|
||||||
|
that in a previous moment, the function ssdp_handle_ctrlpt_msg() did
|
||||||
|
not use a postponed thread to call ctrlpt_callback(). Now the code
|
||||||
|
uses a thread, and most probably the original data would get lost and
|
||||||
|
the pointer would point to an invalid memory region. This fix caused
|
||||||
|
an interface change in the library and the minor library version was
|
||||||
|
bumped. Also, the libtool library numbers were changed accordingly.
|
||||||
|
|
||||||
2007-05-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
2007-05-26 Marcelo Jimenez <mroberto(at)users.sourceforge.net>
|
||||||
* Added support for the Basic Device
|
* Added support for the Basic Device
|
||||||
(http://www.upnp.org/standardizeddcps/basic.asp) as suggested by
|
(http://www.upnp.org/standardizeddcps/basic.asp) as suggested by
|
||||||
@@ -364,14 +414,14 @@ Version 1.4.0
|
|||||||
FORK FROM DEAD libupnp
|
FORK FROM DEAD libupnp
|
||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
|
|
||||||
2006-04-29 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-04-29 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* THANKS: new file with list of contributors
|
* THANKS: new file with list of contributors
|
||||||
|
|
||||||
* upnp/src/gena/gena_device.c (respond_ok): add 'Content-Length: 0'
|
* upnp/src/gena/gena_device.c (respond_ok): add 'Content-Length: 0'
|
||||||
in subscription response. Patch by Chaos (Bug # 1455367).
|
in subscription response. Patch by Chaos (Bug # 1455367).
|
||||||
|
|
||||||
2006-04-08 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-04-08 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/doc/UPnP_Programming_Guide.pdf: replace this document with
|
* upnp/doc/UPnP_Programming_Guide.pdf: replace this document with
|
||||||
the one in libupnp-doc-1.2.1 because current CVS version
|
the one in libupnp-doc-1.2.1 because current CVS version
|
||||||
@@ -382,20 +432,20 @@ FORK FROM DEAD libupnp
|
|||||||
* changes applied to several files to work under Sparc Solaris, temporarily
|
* changes applied to several files to work under Sparc Solaris, temporarily
|
||||||
requiring a define SPARC_SOLARIS
|
requiring a define SPARC_SOLARIS
|
||||||
|
|
||||||
2006-04-03 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-04-03 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/Makefile.am: install upnp samples in $(docdir)/examples
|
* upnp/Makefile.am: install upnp samples in $(docdir)/examples
|
||||||
|
|
||||||
2006-03-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* configure.ac: add --with-docdir option to choose where documentation
|
* configure.ac: add --with-docdir option to choose where documentation
|
||||||
is installed (or -without-docdir to not install the documentation)
|
is installed (or -without-docdir to not install the documentation)
|
||||||
|
|
||||||
2006-03-27 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-27 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* ixml/test: add simple test suite for xml parser
|
* ixml/test: add simple test suite for xml parser
|
||||||
|
|
||||||
2006-03-26 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-26 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* ixml/src/ixmlparser.c (Parser_processCDSect): fix bug which prevents
|
* ixml/src/ixmlparser.c (Parser_processCDSect): fix bug which prevents
|
||||||
CDATA sections which contain a 0 (zero) to be parsed (instead the
|
CDATA sections which contain a 0 (zero) to be parsed (instead the
|
||||||
@@ -406,18 +456,18 @@ FORK FROM DEAD libupnp
|
|||||||
option, and move samples compilation from check_PROGRAMS to
|
option, and move samples compilation from check_PROGRAMS to
|
||||||
noinst_PROGRAMS
|
noinst_PROGRAMS
|
||||||
|
|
||||||
2006-03-25 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-25 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/src/genlib/miniserver/miniserver.c (get_miniserver_sockets):
|
* upnp/src/genlib/miniserver/miniserver.c (get_miniserver_sockets):
|
||||||
fix bug if new socket created has fd 0 (can only occur when stdin
|
fix bug if new socket created has fd 0 (can only occur when stdin
|
||||||
has been closed). Patch by Oskar Liljeblad 2004-07-02 :
|
has been closed). Patch by Oskar Liljeblad 2004-07-02 :
|
||||||
http://sourceforge.net/mailarchive/message.php?msg_id=8870528
|
http://sourceforge.net/mailarchive/message.php?msg_id=8870528
|
||||||
|
|
||||||
2006-03-21 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-21 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/test/test_init.c: add some version checks and exit if failure
|
* upnp/test/test_init.c: add some version checks and exit if failure
|
||||||
|
|
||||||
2006-03-05 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-05 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* libupnp version 1.3.1
|
* libupnp version 1.3.1
|
||||||
|
|
||||||
@@ -432,11 +482,11 @@ FORK FROM DEAD libupnp
|
|||||||
dependencies between upnp and ixml / threadutil, so that programs
|
dependencies between upnp and ixml / threadutil, so that programs
|
||||||
linking against upnp only still work.
|
linking against upnp only still work.
|
||||||
|
|
||||||
2006-03-04 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-04 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* libupnp version 1.3.0
|
* libupnp version 1.3.0
|
||||||
|
|
||||||
2006-03-03 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-03-03 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/src/genlib/net/http/httpreadwrite.c (get_sdk_info): use
|
* upnp/src/genlib/net/http/httpreadwrite.c (get_sdk_info): use
|
||||||
package version string from configure to set sdk info
|
package version string from configure to set sdk info
|
||||||
@@ -444,7 +494,7 @@ FORK FROM DEAD libupnp
|
|||||||
* upnp/Makefile.am: add sample/tvdevice/web/ files in EXTRA_DIST
|
* upnp/Makefile.am: add sample/tvdevice/web/ files in EXTRA_DIST
|
||||||
+ do not distribute generated upnpconfig.h file.
|
+ do not distribute generated upnpconfig.h file.
|
||||||
|
|
||||||
2006-02-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-02-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/src/inc/config.h, configure.ac: use only new defines
|
* upnp/src/inc/config.h, configure.ac: use only new defines
|
||||||
UPNP_HAVE_xx instead of INCLUDE_yyy_APIS and INTERNAL_WEB_SERVER
|
UPNP_HAVE_xx instead of INCLUDE_yyy_APIS and INTERNAL_WEB_SERVER
|
||||||
@@ -453,7 +503,7 @@ FORK FROM DEAD libupnp
|
|||||||
the librarie LDFLAGS in order to export only the symbols defined
|
the librarie LDFLAGS in order to export only the symbols defined
|
||||||
in the API
|
in the API
|
||||||
|
|
||||||
2006-02-27 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-02-27 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* configure.ac: add libtool versions for the 3 libraries
|
* configure.ac: add libtool versions for the 3 libraries
|
||||||
|
|
||||||
@@ -461,7 +511,7 @@ FORK FROM DEAD libupnp
|
|||||||
|
|
||||||
* threadutil/src/ThreadPool.c (SetSeed): add missing 'static'
|
* threadutil/src/ThreadPool.c (SetSeed): add missing 'static'
|
||||||
|
|
||||||
2006-02-26 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-02-26 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* threadutil/inc/iasnprintf.h: add gcc __printf__ format attribute
|
* threadutil/inc/iasnprintf.h: add gcc __printf__ format attribute
|
||||||
to "iasnprintf"
|
to "iasnprintf"
|
||||||
@@ -482,11 +532,11 @@ FORK FROM DEAD libupnp
|
|||||||
the configuration of the installed libraries (generates installed
|
the configuration of the installed libraries (generates installed
|
||||||
file <upnp/upnpconfig.h>)
|
file <upnp/upnpconfig.h>)
|
||||||
|
|
||||||
2006-02-22 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-02-22 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/ : add missing include of config.h in some .c files
|
* upnp/ : add missing include of config.h in some .c files
|
||||||
|
|
||||||
2006-02-21 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-02-21 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/inc/upnp.h: move some definitions which should not be
|
* upnp/inc/upnp.h: move some definitions which should not be
|
||||||
exported into "upnp/src/inc/util.h"
|
exported into "upnp/src/inc/util.h"
|
||||||
@@ -494,12 +544,12 @@ FORK FROM DEAD libupnp
|
|||||||
* import all modifications below from libupnp in djmount 0.51
|
* import all modifications below from libupnp in djmount 0.51
|
||||||
into official libupnp
|
into official libupnp
|
||||||
|
|
||||||
2006-01-17 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-01-17 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* threadutil/Makefile.am (libthreadutil_la_SOURCES): remove extraneous
|
* threadutil/Makefile.am (libthreadutil_la_SOURCES): remove extraneous
|
||||||
file
|
file
|
||||||
|
|
||||||
2006-01-15 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-01-15 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* configure.ac: add checks for large-file support
|
* configure.ac: add checks for large-file support
|
||||||
|
|
||||||
@@ -519,53 +569,53 @@ FORK FROM DEAD libupnp
|
|||||||
* ixml/src/node.c (ixmlNode_getNodeType): fix compilation warning
|
* ixml/src/node.c (ixmlNode_getNodeType): fix compilation warning
|
||||||
on const return type
|
on const return type
|
||||||
|
|
||||||
2006-01-12 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-01-12 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/src/inc/readwrite.h : suppress unused C++ header file
|
* upnp/src/inc/readwrite.h : suppress unused C++ header file
|
||||||
|
|
||||||
2006-01-11 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2006-01-11 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/inc/config.h, upnp/src/inc/upnpapi.h,
|
* upnp/inc/config.h, upnp/src/inc/upnpapi.h,
|
||||||
upnp/src/inc/httpreadwrite.h: remove internal configuration variable
|
upnp/src/inc/httpreadwrite.h: remove internal configuration variable
|
||||||
MINIMUM_DELAY (no clear purpose)
|
MINIMUM_DELAY (no clear purpose)
|
||||||
|
|
||||||
2005-12-05 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-12-05 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/inc/upnp.h: re-declare obsolete method UpnpSetContentLength,
|
* upnp/inc/upnp.h: re-declare obsolete method UpnpSetContentLength,
|
||||||
for binary compatibility with previous libupnp version.
|
for binary compatibility with previous libupnp version.
|
||||||
|
|
||||||
* upnp/src/api/upnpapi.c: correct type of g_maxContentLength to size_t
|
* upnp/src/api/upnpapi.c: correct type of g_maxContentLength to size_t
|
||||||
|
|
||||||
2005-11-01 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-11-01 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* autoconfiscate library : replace all makefiles by Makefile.am
|
* autoconfiscate library : replace all makefiles by Makefile.am
|
||||||
for automake support, + preliminary autoconf support
|
for automake support, + preliminary autoconf support
|
||||||
(generated config.h not yet used in source files)
|
(generated config.h not yet used in source files)
|
||||||
|
|
||||||
2005-10-18 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-10-18 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/src/makefile: fix location of DEBUG STATIC libupnp library
|
* upnp/src/makefile: fix location of DEBUG STATIC libupnp library
|
||||||
|
|
||||||
* upnp/sample/tvctrlpt/linux/Makefile,
|
* upnp/sample/tvctrlpt/linux/Makefile,
|
||||||
upnp/sample/tvdevice/linux/Makefile: fix STATIC library support
|
upnp/sample/tvdevice/linux/Makefile: fix STATIC library support
|
||||||
|
|
||||||
2005-10-16 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-10-16 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* threadutil/src/Makefile (clean): remove built library
|
* threadutil/src/Makefile (clean): remove built library
|
||||||
|
|
||||||
2005-08-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-08-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* ixml/src/ixml.h, ixml/src/ixml.c (ixmlRelaxParser) : new function
|
* ixml/src/ixml.h, ixml/src/ixml.c (ixmlRelaxParser) : new function
|
||||||
|
|
||||||
* ixml/src/ixmlparser.h, ixml/src/ixmlparser.c (Parser_setErrorChar) :
|
* ixml/src/ixmlparser.h, ixml/src/ixmlparser.c (Parser_setErrorChar) :
|
||||||
new function
|
new function
|
||||||
|
|
||||||
2005-08-02 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-08-02 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* ixml/src/Makefile: correct bug for static library being incorrectly
|
* ixml/src/Makefile: correct bug for static library being incorrectly
|
||||||
stripped when building non-debug
|
stripped when building non-debug
|
||||||
|
|
||||||
2005-06-09 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-06-09 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* ixml/src/element.c (ixmlElement_removeAttributeNode):
|
* ixml/src/element.c (ixmlElement_removeAttributeNode):
|
||||||
remove some compilation warning
|
remove some compilation warning
|
||||||
@@ -576,7 +626,7 @@ FORK FROM DEAD libupnp
|
|||||||
* upnp/inc/upnptools.h, upnp/src/api/upnptools.c :
|
* upnp/inc/upnptools.h, upnp/src/api/upnptools.c :
|
||||||
add missing const's in public API
|
add missing const's in public API
|
||||||
|
|
||||||
2005-05-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-05-28 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/inc/config.h: suppress HTTP_READ_BYTES (unused)
|
* upnp/inc/config.h: suppress HTTP_READ_BYTES (unused)
|
||||||
and replace by DEFAULT_SOAP_CONTENT_LENGTH (previously in upnpapi.h)
|
and replace by DEFAULT_SOAP_CONTENT_LENGTH (previously in upnpapi.h)
|
||||||
@@ -597,7 +647,7 @@ FORK FROM DEAD libupnp
|
|||||||
* upnp/src/genlib/net/http/httpreadwrite.c : corrected an incorrect
|
* upnp/src/genlib/net/http/httpreadwrite.c : corrected an incorrect
|
||||||
sprintf format
|
sprintf format
|
||||||
|
|
||||||
2005-05-27 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-05-27 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/makefile, upnp/src/makefile,
|
* upnp/makefile, upnp/src/makefile,
|
||||||
ixml/Makefile, ixml/src/Makefile,
|
ixml/Makefile, ixml/src/Makefile,
|
||||||
@@ -605,7 +655,7 @@ FORK FROM DEAD libupnp
|
|||||||
implement STATIC library support (from patch at
|
implement STATIC library support (from patch at
|
||||||
http://sourceforge.net/tracker/?group_id=7189&atid=307189 )
|
http://sourceforge.net/tracker/?group_id=7189&atid=307189 )
|
||||||
|
|
||||||
2005-05-26 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
2005-05-26 R<>mi Turboult <r3mi(at)users.sourceforge.net>
|
||||||
|
|
||||||
* upnp/src/api/upnpapi.c, upnp/src/soap/soap_device.c,
|
* upnp/src/api/upnpapi.c, upnp/src/soap/soap_device.c,
|
||||||
upnp/src/soap/makefile :
|
upnp/src/soap/makefile :
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
|
|
||||||
#
|
#
|
||||||
# Top-level "Makefile.am" for libupnp
|
# Top-level "Makefile.am" for libupnp
|
||||||
#
|
#
|
||||||
# Copyright (C) 2005 R<>mi Turboult <r3mi@users.sourceforge.net>
|
# Copyright (C) 2005 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
#
|
#
|
||||||
|
|
||||||
ACLOCAL_AMFLAGS = -I m4
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
|
|||||||
2
README
2
README
@@ -1,7 +1,7 @@
|
|||||||
Portable SDK for UPnP* Devices (libupnp)
|
Portable SDK for UPnP* Devices (libupnp)
|
||||||
|
|
||||||
Copyright (c) 2000-2003 Intel Corporation - All Rights Reserved.
|
Copyright (c) 2000-2003 Intel Corporation - All Rights Reserved.
|
||||||
Copyright (c) 2005-2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
Copyright (c) 2005-2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
Copyright (c) 2006 Michel Pfeiffer and others <virtual_worlds@gmx.de>
|
Copyright (c) 2006 Michel Pfeiffer and others <virtual_worlds@gmx.de>
|
||||||
|
|
||||||
See LICENSE for details.
|
See LICENSE for details.
|
||||||
|
|||||||
2
THANKS
2
THANKS
@@ -7,6 +7,7 @@ Here is a list of these people. Help us keep it complete and
|
|||||||
exempt of errors.
|
exempt of errors.
|
||||||
|
|
||||||
- Arno Willig
|
- Arno Willig
|
||||||
|
- Bob Ciora
|
||||||
- Chaos
|
- Chaos
|
||||||
- Craig Nelson
|
- Craig Nelson
|
||||||
- David Maass
|
- David Maass
|
||||||
@@ -28,6 +29,7 @@ exempt of errors.
|
|||||||
- Oskar Liljeblad
|
- Oskar Liljeblad
|
||||||
- Michael (Oxy)
|
- Michael (Oxy)
|
||||||
- Paul Vixie
|
- Paul Vixie
|
||||||
|
- Rene Hexel
|
||||||
- Siva Chandran
|
- Siva Chandran
|
||||||
- Timothy Redaelli
|
- Timothy Redaelli
|
||||||
- Titus Winters
|
- Titus Winters
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
// -*- C -*-
|
// -*- C -*-
|
||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
//
|
//
|
||||||
// Copyright (c) 2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
// Copyright (c) 2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
// All rights reserved.
|
// All rights reserved.
|
||||||
//
|
//
|
||||||
// Redistribution and use in source and binary forms, with or without
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
|||||||
@@ -5,17 +5,17 @@
|
|||||||
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
|
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
|
||||||
|
|
||||||
CFG=libupnp - Win32 Debug
|
CFG=libupnp - Win32 Debug
|
||||||
!MESSAGE Dies ist kein g<>ltiges Makefile. Zum Erstellen dieses Projekts mit NMAKE
|
!MESSAGE Dies ist kein g<>ltiges Makefile. Zum Erstellen dieses Projekts mit NMAKE
|
||||||
!MESSAGE verwenden Sie den Befehl "Makefile exportieren" und f<>hren Sie den Befehl
|
!MESSAGE verwenden Sie den Befehl "Makefile exportieren" und f<>hren Sie den Befehl
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE NMAKE /f "libupnp.mak".
|
!MESSAGE NMAKE /f "libupnp.mak".
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE Sie k<>nnen beim Ausf<73>hren von NMAKE eine Konfiguration angeben
|
!MESSAGE Sie k<>nnen beim Ausf<73>hren von NMAKE eine Konfiguration angeben
|
||||||
!MESSAGE durch Definieren des Makros CFG in der Befehlszeile. Zum Beispiel:
|
!MESSAGE durch Definieren des Makros CFG in der Befehlszeile. Zum Beispiel:
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE NMAKE /f "libupnp.mak" CFG="libupnp - Win32 Debug"
|
!MESSAGE NMAKE /f "libupnp.mak" CFG="libupnp - Win32 Debug"
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE F<>r die Konfiguration stehen zur Auswahl:
|
!MESSAGE F<>r die Konfiguration stehen zur Auswahl:
|
||||||
!MESSAGE
|
!MESSAGE
|
||||||
!MESSAGE "libupnp - Win32 Release" (basierend auf "Win32 (x86) Dynamic-Link Library")
|
!MESSAGE "libupnp - Win32 Release" (basierend auf "Win32 (x86) Dynamic-Link Library")
|
||||||
!MESSAGE "libupnp - Win32 Debug" (basierend auf "Win32 (x86) Dynamic-Link Library")
|
!MESSAGE "libupnp - Win32 Debug" (basierend auf "Win32 (x86) Dynamic-Link Library")
|
||||||
|
|||||||
36
configure.ac
36
configure.ac
@@ -4,12 +4,12 @@
|
|||||||
#
|
#
|
||||||
# Process this file with autoconf to produce a configure script.
|
# Process this file with autoconf to produce a configure script.
|
||||||
#
|
#
|
||||||
# (C) Copyright 2005-2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
# (C) Copyright 2005-2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
#
|
#
|
||||||
|
|
||||||
AC_PREREQ(2.60)
|
AC_PREREQ(2.60)
|
||||||
|
|
||||||
AC_INIT([libupnp], [1.4.7], [mroberto@users.sourceforge.net])
|
AC_INIT([libupnp], [1.6.0], [mroberto@users.sourceforge.net])
|
||||||
# *Independently* of the above libupnp package version, the libtool version
|
# *Independently* of the above libupnp package version, the libtool version
|
||||||
# of the 3 libraries need to be updated whenever there is a change released :
|
# of the 3 libraries need to be updated whenever there is a change released :
|
||||||
# "current:revision:age" (this is NOT the same as the package version), where:
|
# "current:revision:age" (this is NOT the same as the package version), where:
|
||||||
@@ -34,11 +34,35 @@ AC_INIT([libupnp], [1.4.7], [mroberto@users.sourceforge.net])
|
|||||||
# current: 2 -> 3
|
# current: 2 -> 3
|
||||||
# revisiion: 3 -> 0
|
# revisiion: 3 -> 0
|
||||||
# age: 0 -> 1
|
# age: 0 -> 1
|
||||||
# - Code has changed in upnp (revision 2 -> 3)
|
# - Code has changed in upnp
|
||||||
# revision: 2 -> 3
|
# revision: 2 -> 3
|
||||||
AC_SUBST([LT_VERSION_IXML], [2:3:0])
|
#
|
||||||
AC_SUBST([LT_VERSION_THREADUTIL], [3:0:1])
|
# For release 1.4.6, we had:
|
||||||
AC_SUBST([LT_VERSION_UPNP], [2:3:0])
|
#AC_SUBST([LT_VERSION_IXML], [2:3:0])
|
||||||
|
#AC_SUBST([LT_VERSION_THREADUTIL], [3:0:1])
|
||||||
|
#AC_SUBST([LT_VERSION_UPNP], [2:3:0])
|
||||||
|
#
|
||||||
|
# "current:revision:age"
|
||||||
|
#
|
||||||
|
# - Code has changed in ixml
|
||||||
|
# revision: 3 -> 4
|
||||||
|
# - Code has changed in threadutil
|
||||||
|
# revision: 0 -> 1
|
||||||
|
# - Code has changed in upnp
|
||||||
|
# revision: 3 -> 4
|
||||||
|
# - Interface changed in upnp
|
||||||
|
# current: 2 -> 3
|
||||||
|
# revision: 4 -> 0
|
||||||
|
# - Interface removed in upnp
|
||||||
|
# age: 0 -> 0
|
||||||
|
#
|
||||||
|
# For release 1.6.0, we had:
|
||||||
|
#AC_SUBST([LT_VERSION_IXML], [2:4:0])
|
||||||
|
#AC_SUBST([LT_VERSION_THREADUTIL], [3:1:1])
|
||||||
|
#AC_SUBST([LT_VERSION_UPNP], [3:0:0])
|
||||||
|
AC_SUBST([LT_VERSION_IXML], [2:4:0])
|
||||||
|
AC_SUBST([LT_VERSION_THREADUTIL], [3:1:1])
|
||||||
|
AC_SUBST([LT_VERSION_UPNP], [3:0:0])
|
||||||
|
|
||||||
|
|
||||||
AC_CONFIG_AUX_DIR(config.aux)
|
AC_CONFIG_AUX_DIR(config.aux)
|
||||||
|
|||||||
@@ -9,4 +9,3 @@ Version: @VERSION@
|
|||||||
Libs: @PTHREAD_LIBS@ -L${libdir} -lupnp -lthreadutil -lixml
|
Libs: @PTHREAD_LIBS@ -L${libdir} -lupnp -lthreadutil -lixml
|
||||||
Cflags: @PTHREAD_CFLAGS@ -I${includedir}/upnp
|
Cflags: @PTHREAD_CFLAGS@ -I${includedir}/upnp
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
Version: 1.4.7
|
Version: 1.4.2
|
||||||
Summary: Universal Plug and Play (UPnP) SDK
|
Summary: Universal Plug and Play (UPnP) SDK
|
||||||
Name: libupnp
|
Name: libupnp
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
@@ -77,9 +77,6 @@ make install DESTDIR=$RPM_BUILD_ROOT
|
|||||||
rm -rf %{buildroot}
|
rm -rf %{buildroot}
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Mon Nov 19 2007 Marcelo Jimenez <mroberto@users.sourceforge.net> - 1.4.7-1
|
|
||||||
- Update to version 1.4.7
|
|
||||||
|
|
||||||
* Fri Feb 02 2007 Eric Tanguy <eric.tanguy@univ-nantes.fr> - 1.4.2-1
|
* Fri Feb 02 2007 Eric Tanguy <eric.tanguy@univ-nantes.fr> - 1.4.2-1
|
||||||
- Update to version 1.4.2
|
- Update to version 1.4.2
|
||||||
|
|
||||||
|
|||||||
@@ -1,50 +1,88 @@
|
|||||||
dnl @synopsis ACX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
|
##### http://autoconf-archive.cryp.to/acx_pthread.html
|
||||||
dnl
|
#
|
||||||
dnl @summary figure out how to build C programs using POSIX threads
|
# SYNOPSIS
|
||||||
dnl
|
#
|
||||||
dnl This macro figures out how to build C programs using POSIX threads.
|
# ACX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
|
||||||
dnl It sets the PTHREAD_LIBS output variable to the threads library and
|
#
|
||||||
dnl linker flags, and the PTHREAD_CFLAGS output variable to any special
|
# DESCRIPTION
|
||||||
dnl C compiler flags that are needed. (The user can also force certain
|
#
|
||||||
dnl compiler flags/libs to be tested by setting these environment
|
# This macro figures out how to build C programs using POSIX threads.
|
||||||
dnl variables.)
|
# It sets the PTHREAD_LIBS output variable to the threads library and
|
||||||
dnl
|
# linker flags, and the PTHREAD_CFLAGS output variable to any special
|
||||||
dnl Also sets PTHREAD_CC to any special C compiler that is needed for
|
# C compiler flags that are needed. (The user can also force certain
|
||||||
dnl multi-threaded programs (defaults to the value of CC otherwise).
|
# compiler flags/libs to be tested by setting these environment
|
||||||
dnl (This is necessary on AIX to use the special cc_r compiler alias.)
|
# variables.)
|
||||||
dnl
|
#
|
||||||
dnl NOTE: You are assumed to not only compile your program with these
|
# Also sets PTHREAD_CC to any special C compiler that is needed for
|
||||||
dnl flags, but also link it with them as well. e.g. you should link
|
# multi-threaded programs (defaults to the value of CC otherwise).
|
||||||
dnl with $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS
|
# (This is necessary on AIX to use the special cc_r compiler alias.)
|
||||||
dnl $LIBS
|
#
|
||||||
dnl
|
# NOTE: You are assumed to not only compile your program with these
|
||||||
dnl If you are only building threads programs, you may wish to use
|
# flags, but also link it with them as well. e.g. you should link
|
||||||
dnl these variables in your default LIBS, CFLAGS, and CC:
|
# with $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS
|
||||||
dnl
|
# $LIBS
|
||||||
dnl LIBS="$PTHREAD_LIBS $LIBS"
|
#
|
||||||
dnl CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
# If you are only building threads programs, you may wish to use
|
||||||
dnl CC="$PTHREAD_CC"
|
# these variables in your default LIBS, CFLAGS, and CC:
|
||||||
dnl
|
#
|
||||||
dnl In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute
|
# LIBS="$PTHREAD_LIBS $LIBS"
|
||||||
dnl constant has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to
|
# CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
|
||||||
dnl that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
|
# CC="$PTHREAD_CC"
|
||||||
dnl
|
#
|
||||||
dnl ACTION-IF-FOUND is a list of shell commands to run if a threads
|
# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute
|
||||||
dnl library is found, and ACTION-IF-NOT-FOUND is a list of commands to
|
# constant has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to
|
||||||
dnl run it if it is not found. If ACTION-IF-FOUND is not specified, the
|
# that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX).
|
||||||
dnl default action will define HAVE_PTHREAD.
|
#
|
||||||
dnl
|
# ACTION-IF-FOUND is a list of shell commands to run if a threads
|
||||||
dnl Please let the authors know if this macro fails on any platform, or
|
# library is found, and ACTION-IF-NOT-FOUND is a list of commands to
|
||||||
dnl if you have any other suggestions or comments. This macro was based
|
# run it if it is not found. If ACTION-IF-FOUND is not specified, the
|
||||||
dnl on work by SGJ on autoconf scripts for FFTW (www.fftw.org) (with
|
# default action will define HAVE_PTHREAD.
|
||||||
dnl help from M. Frigo), as well as ac_pthread and hb_pthread macros
|
#
|
||||||
dnl posted by Alejandro Forero Cuervo to the autoconf macro repository.
|
# Please let the authors know if this macro fails on any platform, or
|
||||||
dnl We are also grateful for the helpful feedback of numerous users.
|
# if you have any other suggestions or comments. This macro was based
|
||||||
dnl
|
# on work by SGJ on autoconf scripts for FFTW (http://www.fftw.org/)
|
||||||
dnl @category InstalledPackages
|
# (with help from M. Frigo), as well as ac_pthread and hb_pthread
|
||||||
dnl @author Steven G. Johnson <stevenj@alum.mit.edu>
|
# macros posted by Alejandro Forero Cuervo to the autoconf macro
|
||||||
dnl @version 2005-06-15
|
# repository. We are also grateful for the helpful feedback of
|
||||||
dnl @license GPLWithACException
|
# numerous users.
|
||||||
|
#
|
||||||
|
# LAST MODIFICATION
|
||||||
|
#
|
||||||
|
# 2006-05-29
|
||||||
|
#
|
||||||
|
# COPYLEFT
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 Steven G. Johnson <stevenj@alum.mit.edu>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 2 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA.
|
||||||
|
#
|
||||||
|
# As a special exception, the respective Autoconf Macro's copyright
|
||||||
|
# owner gives unlimited permission to copy, distribute and modify the
|
||||||
|
# configure scripts that are the output of Autoconf when processing
|
||||||
|
# the Macro. You need not follow the terms of the GNU General Public
|
||||||
|
# License when using or distributing such scripts, even though
|
||||||
|
# portions of the text of the Macro appear in them. The GNU General
|
||||||
|
# Public License (GPL) does govern all other use of the material that
|
||||||
|
# constitutes the Autoconf Macro.
|
||||||
|
#
|
||||||
|
# This special exception to the GPL applies to versions of the
|
||||||
|
# Autoconf Macro released by the Autoconf Macro Archive. When you
|
||||||
|
# make and distribute a modified version of the Autoconf Macro, you
|
||||||
|
# may extend this special exception to the GPL to apply to your
|
||||||
|
# modified version as well.
|
||||||
|
|
||||||
AC_DEFUN([ACX_PTHREAD], [
|
AC_DEFUN([ACX_PTHREAD], [
|
||||||
AC_REQUIRE([AC_CANONICAL_HOST])
|
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||||
@@ -216,8 +254,12 @@ if test "x$acx_pthread_ok" = xyes; then
|
|||||||
LIBS="$save_LIBS"
|
LIBS="$save_LIBS"
|
||||||
CFLAGS="$save_CFLAGS"
|
CFLAGS="$save_CFLAGS"
|
||||||
|
|
||||||
# More AIX lossage: must compile with cc_r
|
# More AIX lossage: must compile with xlc_r or cc_r
|
||||||
AC_CHECK_PROG(PTHREAD_CC, cc_r, cc_r, ${CC})
|
if test x"$GCC" != xyes; then
|
||||||
|
AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC})
|
||||||
|
else
|
||||||
|
PTHREAD_CC=$CC
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
PTHREAD_CC="$CC"
|
PTHREAD_CC="$CC"
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,48 +1,87 @@
|
|||||||
dnl @synopsis AX_CFLAGS_GCC_OPTION (optionflag [,[shellvar][,[A][,[NA]]])
|
##### http://autoconf-archive.cryp.to/ax_cflags_gcc_option.html
|
||||||
dnl
|
#
|
||||||
dnl AX_CFLAGS_GCC_OPTION(-fvomit-frame) would show a message as like
|
# SYNOPSIS
|
||||||
dnl "checking CFLAGS for gcc -fvomit-frame ... yes" and adds the
|
#
|
||||||
dnl optionflag to CFLAGS if it is understood. You can override the
|
# AX_CFLAGS_GCC_OPTION (optionflag [,[shellvar][,[A][,[NA]]])
|
||||||
dnl shellvar-default of CFLAGS of course. The order of arguments stems
|
#
|
||||||
dnl from the explicit macros like AX_CFLAGS_WARN_ALL.
|
# DESCRIPTION
|
||||||
dnl
|
#
|
||||||
dnl The cousin AX_CXXFLAGS_GCC_OPTION would check for an option to add
|
# AX_CFLAGS_GCC_OPTION(-fvomit-frame) would show a message as like
|
||||||
dnl to CXXFLAGS - and it uses the autoconf setup for C++ instead of C
|
# "checking CFLAGS for gcc -fvomit-frame ... yes" and adds the
|
||||||
dnl (since it is possible to use different compilers for C and C++).
|
# optionflag to CFLAGS if it is understood. You can override the
|
||||||
dnl
|
# shellvar-default of CFLAGS of course. The order of arguments stems
|
||||||
dnl The macro is a lot simpler than any special AX_CFLAGS_* macro (or
|
# from the explicit macros like AX_CFLAGS_WARN_ALL.
|
||||||
dnl ac_cxx_rtti.m4 macro) but allows to check for arbitrary options.
|
#
|
||||||
dnl However, if you use this macro in a few places, it would be great
|
# The cousin AX_CXXFLAGS_GCC_OPTION would check for an option to add
|
||||||
dnl if you would make up a new function-macro and submit it to the
|
# to CXXFLAGS - and it uses the autoconf setup for C++ instead of C
|
||||||
dnl ac-archive.
|
# (since it is possible to use different compilers for C and C++).
|
||||||
dnl
|
#
|
||||||
dnl - $1 option-to-check-for : required ("-option" as non-value)
|
# The macro is a lot simpler than any special AX_CFLAGS_* macro (or
|
||||||
dnl - $2 shell-variable-to-add-to : CFLAGS (or CXXFLAGS in the other case)
|
# ac_cxx_rtti.m4 macro) but allows to check for arbitrary options.
|
||||||
dnl - $3 action-if-found : add value to shellvariable
|
# However, if you use this macro in a few places, it would be great
|
||||||
dnl - $4 action-if-not-found : nothing
|
# if you would make up a new function-macro and submit it to the
|
||||||
dnl
|
# ac-archive.
|
||||||
dnl note: in earlier versions, $1-$2 were swapped. We try to detect the
|
#
|
||||||
dnl situation and accept a $2=~/-/ as being the old
|
# - $1 option-to-check-for : required ("-option" as non-value)
|
||||||
dnl option-to-check-for.
|
# - $2 shell-variable-to-add-to : CFLAGS (or CXXFLAGS in the other case)
|
||||||
dnl
|
# - $3 action-if-found : add value to shellvariable
|
||||||
dnl also: there are other variants that emerged from the original macro
|
# - $4 action-if-not-found : nothing
|
||||||
dnl variant which did just test an option to be possibly added.
|
#
|
||||||
dnl However, some compilers accept an option silently, or possibly for
|
# note: in earlier versions, $1-$2 were swapped. We try to detect the
|
||||||
dnl just another option that was not intended. Therefore, we have to do
|
# situation and accept a $2=~/-/ as being the old
|
||||||
dnl a generic test for a compiler family. For gcc we check "-pedantic"
|
# option-to-check-for.
|
||||||
dnl being accepted which is also understood by compilers who just want
|
#
|
||||||
dnl to be compatible with gcc even when not being made from gcc
|
# also: there are other variants that emerged from the original macro
|
||||||
dnl sources.
|
# variant which did just test an option to be possibly added.
|
||||||
dnl
|
# However, some compilers accept an option silently, or possibly for
|
||||||
dnl see also:
|
# just another option that was not intended. Therefore, we have to do
|
||||||
dnl
|
# a generic test for a compiler family. For gcc we check "-pedantic"
|
||||||
dnl AX_CFLAGS_SUN_OPTION AX_CFLAGS_HPUX_OPTION
|
# being accepted which is also understood by compilers who just want
|
||||||
dnl AX_CFLAGS_AIX_OPTION AX_CFLAGS_IRIX_OPTION
|
# to be compatible with gcc even when not being made from gcc
|
||||||
dnl
|
# sources.
|
||||||
dnl @category C
|
#
|
||||||
dnl @author Guido Draheim <guidod@gmx.de>
|
# see also:
|
||||||
dnl @version 2003-11-04
|
#
|
||||||
dnl @license GPLWithACException
|
# AX_CFLAGS_SUN_OPTION AX_CFLAGS_HPUX_OPTION
|
||||||
|
# AX_CFLAGS_AIX_OPTION AX_CFLAGS_IRIX_OPTION
|
||||||
|
#
|
||||||
|
# LAST MODIFICATION
|
||||||
|
#
|
||||||
|
# 2006-12-12
|
||||||
|
#
|
||||||
|
# COPYLEFT
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 Guido U. Draheim <guidod@gmx.de>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 2 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA.
|
||||||
|
#
|
||||||
|
# As a special exception, the respective Autoconf Macro's copyright
|
||||||
|
# owner gives unlimited permission to copy, distribute and modify the
|
||||||
|
# configure scripts that are the output of Autoconf when processing
|
||||||
|
# the Macro. You need not follow the terms of the GNU General Public
|
||||||
|
# License when using or distributing such scripts, even though
|
||||||
|
# portions of the text of the Macro appear in them. The GNU General
|
||||||
|
# Public License (GPL) does govern all other use of the material that
|
||||||
|
# constitutes the Autoconf Macro.
|
||||||
|
#
|
||||||
|
# This special exception to the GPL applies to versions of the
|
||||||
|
# Autoconf Macro released by the Autoconf Macro Archive. When you
|
||||||
|
# make and distribute a modified version of the Autoconf Macro, you
|
||||||
|
# may extend this special exception to the GPL to apply to your
|
||||||
|
# modified version as well.
|
||||||
|
|
||||||
AC_DEFUN([AX_CFLAGS_GCC_OPTION_OLD], [dnl
|
AC_DEFUN([AX_CFLAGS_GCC_OPTION_OLD], [dnl
|
||||||
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
||||||
@@ -53,7 +92,8 @@ VAR,[VAR="no, unknown"
|
|||||||
AC_LANG_C
|
AC_LANG_C
|
||||||
ac_save_[]FLAGS="$[]FLAGS"
|
ac_save_[]FLAGS="$[]FLAGS"
|
||||||
for ac_arg dnl
|
for ac_arg dnl
|
||||||
in "-pedantic % m4_ifval($2,$2,-option)" dnl GCC
|
in "-pedantic -Werror % m4_ifval($2,$2,-option)" dnl GCC
|
||||||
|
"-pedantic % m4_ifval($2,$2,-option) %% no, obsolete" dnl new GCC
|
||||||
#
|
#
|
||||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||||
AC_TRY_COMPILE([],[return 0;],
|
AC_TRY_COMPILE([],[return 0;],
|
||||||
@@ -85,10 +125,11 @@ AS_VAR_PUSHDEF([VAR],[ac_cv_cxxflags_gcc_option_$2])dnl
|
|||||||
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for gcc m4_ifval($2,$2,-option)],
|
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for gcc m4_ifval($2,$2,-option)],
|
||||||
VAR,[VAR="no, unknown"
|
VAR,[VAR="no, unknown"
|
||||||
AC_LANG_SAVE
|
AC_LANG_SAVE
|
||||||
AC_LANG_CXX
|
AC_LANG_CPLUSPLUS
|
||||||
ac_save_[]FLAGS="$[]FLAGS"
|
ac_save_[]FLAGS="$[]FLAGS"
|
||||||
for ac_arg dnl
|
for ac_arg dnl
|
||||||
in "-pedantic % m4_ifval($2,$2,-option)" dnl GCC
|
in "-pedantic -Werror % m4_ifval($2,$2,-option)" dnl GCC
|
||||||
|
"-pedantic % m4_ifval($2,$2,-option) %% no, obsolete" dnl new GCC
|
||||||
#
|
#
|
||||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||||
AC_TRY_COMPILE([],[return 0;],
|
AC_TRY_COMPILE([],[return 0;],
|
||||||
@@ -122,7 +163,8 @@ VAR,[VAR="no, unknown"
|
|||||||
AC_LANG_C
|
AC_LANG_C
|
||||||
ac_save_[]FLAGS="$[]FLAGS"
|
ac_save_[]FLAGS="$[]FLAGS"
|
||||||
for ac_arg dnl
|
for ac_arg dnl
|
||||||
in "-pedantic % m4_ifval($1,$1,-option)" dnl GCC
|
in "-pedantic -Werror % m4_ifval($1,$1,-option)" dnl GCC
|
||||||
|
"-pedantic % m4_ifval($1,$1,-option) %% no, obsolete" dnl new GCC
|
||||||
#
|
#
|
||||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||||
AC_TRY_COMPILE([],[return 0;],
|
AC_TRY_COMPILE([],[return 0;],
|
||||||
@@ -154,10 +196,11 @@ AS_VAR_PUSHDEF([VAR],[ac_cv_cxxflags_gcc_option_$1])dnl
|
|||||||
AC_CACHE_CHECK([m4_ifval($2,$2,FLAGS) for gcc m4_ifval($1,$1,-option)],
|
AC_CACHE_CHECK([m4_ifval($2,$2,FLAGS) for gcc m4_ifval($1,$1,-option)],
|
||||||
VAR,[VAR="no, unknown"
|
VAR,[VAR="no, unknown"
|
||||||
AC_LANG_SAVE
|
AC_LANG_SAVE
|
||||||
AC_LANG_CXX
|
AC_LANG_CPLUSPLUS
|
||||||
ac_save_[]FLAGS="$[]FLAGS"
|
ac_save_[]FLAGS="$[]FLAGS"
|
||||||
for ac_arg dnl
|
for ac_arg dnl
|
||||||
in "-pedantic % m4_ifval($1,$1,-option)" dnl GCC
|
in "-pedantic -Werror % m4_ifval($1,$1,-option)" dnl GCC
|
||||||
|
"-pedantic % m4_ifval($1,$1,-option) %% no, obsolete" dnl new GCC
|
||||||
#
|
#
|
||||||
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
do FLAGS="$ac_save_[]FLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'`
|
||||||
AC_TRY_COMPILE([],[return 0;],
|
AC_TRY_COMPILE([],[return 0;],
|
||||||
|
|||||||
@@ -1,27 +1,66 @@
|
|||||||
dnl @synopsis AX_CFLAGS_WARN_ALL [(shellvar [,default, [A/NA]])]
|
##### http://autoconf-archive.cryp.to/ax_cflags_warn_all.html
|
||||||
dnl
|
#
|
||||||
dnl Try to find a compiler option that enables most reasonable
|
# SYNOPSIS
|
||||||
dnl warnings. This macro is directly derived from VL_PROG_CC_WARNINGS
|
#
|
||||||
dnl which is split up into two AX_CFLAGS_WARN_ALL and
|
# AX_CFLAGS_WARN_ALL [(shellvar [,default, [A/NA]])]
|
||||||
dnl AX_CFLAGS_WARN_ALL_ANSI
|
#
|
||||||
dnl
|
# DESCRIPTION
|
||||||
dnl For the GNU CC compiler it will be -Wall (and -ansi -pedantic) The
|
#
|
||||||
dnl result is added to the shellvar being CFLAGS by default.
|
# Try to find a compiler option that enables most reasonable
|
||||||
dnl
|
# warnings. This macro is directly derived from VL_PROG_CC_WARNINGS
|
||||||
dnl Currently this macro knows about GCC, Solaris C compiler, Digital
|
# which is split up into two AX_CFLAGS_WARN_ALL and
|
||||||
dnl Unix C compiler, C for AIX Compiler, HP-UX C compiler, IRIX C
|
# AX_CFLAGS_WARN_ALL_ANSI
|
||||||
dnl compiler, NEC SX-5 (Super-UX 10) C compiler, and Cray J90 (Unicos
|
#
|
||||||
dnl 10.0.0.8) C compiler.
|
# For the GNU CC compiler it will be -Wall (and -ansi -pedantic) The
|
||||||
dnl
|
# result is added to the shellvar being CFLAGS by default.
|
||||||
dnl - $1 shell-variable-to-add-to : CFLAGS
|
#
|
||||||
dnl - $2 add-value-if-not-found : nothing
|
# Currently this macro knows about GCC, Solaris C compiler, Digital
|
||||||
dnl - $3 action-if-found : add value to shellvariable
|
# Unix C compiler, C for AIX Compiler, HP-UX C compiler, IRIX C
|
||||||
dnl - $4 action-if-not-found : nothing
|
# compiler, NEC SX-5 (Super-UX 10) C compiler, and Cray J90 (Unicos
|
||||||
dnl
|
# 10.0.0.8) C compiler.
|
||||||
dnl @category C
|
#
|
||||||
dnl @author Guido Draheim <guidod@gmx.de>
|
# - $1 shell-variable-to-add-to : CFLAGS
|
||||||
dnl @version 2003-01-06
|
# - $2 add-value-if-not-found : nothing
|
||||||
dnl @license GPLWithACException
|
# - $3 action-if-found : add value to shellvariable
|
||||||
|
# - $4 action-if-not-found : nothing
|
||||||
|
#
|
||||||
|
# LAST MODIFICATION
|
||||||
|
#
|
||||||
|
# 2006-12-12
|
||||||
|
#
|
||||||
|
# COPYLEFT
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 Guido U. Draheim <guidod@gmx.de>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 2 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA.
|
||||||
|
#
|
||||||
|
# As a special exception, the respective Autoconf Macro's copyright
|
||||||
|
# owner gives unlimited permission to copy, distribute and modify the
|
||||||
|
# configure scripts that are the output of Autoconf when processing
|
||||||
|
# the Macro. You need not follow the terms of the GNU General Public
|
||||||
|
# License when using or distributing such scripts, even though
|
||||||
|
# portions of the text of the Macro appear in them. The GNU General
|
||||||
|
# Public License (GPL) does govern all other use of the material that
|
||||||
|
# constitutes the Autoconf Macro.
|
||||||
|
#
|
||||||
|
# This special exception to the GPL applies to versions of the
|
||||||
|
# Autoconf Macro released by the Autoconf Macro Archive. When you
|
||||||
|
# make and distribute a modified version of the Autoconf Macro, you
|
||||||
|
# may extend this special exception to the GPL to apply to your
|
||||||
|
# modified version as well.
|
||||||
|
|
||||||
AC_DEFUN([AX_CFLAGS_WARN_ALL],[dnl
|
AC_DEFUN([AX_CFLAGS_WARN_ALL],[dnl
|
||||||
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
||||||
@@ -72,7 +111,7 @@ AS_VAR_PUSHDEF([VAR],[ac_cv_cxxflags_warn_all])dnl
|
|||||||
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for maximum warnings],
|
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for maximum warnings],
|
||||||
VAR,[VAR="no, unknown"
|
VAR,[VAR="no, unknown"
|
||||||
AC_LANG_SAVE
|
AC_LANG_SAVE
|
||||||
AC_LANG_CXX
|
AC_LANG_CPLUSPLUS
|
||||||
ac_save_[]FLAGS="$[]FLAGS"
|
ac_save_[]FLAGS="$[]FLAGS"
|
||||||
for ac_arg dnl
|
for ac_arg dnl
|
||||||
in "-pedantic % -Wall" dnl GCC
|
in "-pedantic % -Wall" dnl GCC
|
||||||
@@ -115,4 +154,5 @@ dnl compilers will fail about it. That was needed since a lot of
|
|||||||
dnl compilers will give false positives for some option-syntax
|
dnl compilers will give false positives for some option-syntax
|
||||||
dnl like -Woption or -Xoption as they think of it is a pass-through
|
dnl like -Woption or -Xoption as they think of it is a pass-through
|
||||||
dnl to later compile stages or something. The "%" is used as a
|
dnl to later compile stages or something. The "%" is used as a
|
||||||
dnl delimimiter. A non-option comment can be given after "%%" marks.
|
dnl delimimiter. A non-option comment can be given after "%%" marks
|
||||||
|
dnl which will be shown but not added to the respective C/CXXFLAGS.
|
||||||
|
|||||||
@@ -1,27 +1,66 @@
|
|||||||
dnl @synopsis AX_CFLAGS_WARN_ALL_ANSI [(shellvar [,default, [A/NA]])]
|
##### http://autoconf-archive.cryp.to/ax_cflags_warn_all_ansi.html
|
||||||
dnl
|
#
|
||||||
dnl Try to find a compiler option that enables most reasonable
|
# SYNOPSIS
|
||||||
dnl warnings. This macro is directly derived from VL_PROG_CC_WARNINGS
|
#
|
||||||
dnl which is split up into two AX_CFLAGS_WARN_ALL and
|
# AX_CFLAGS_WARN_ALL_ANSI [(shellvar [,default, [A/NA]])]
|
||||||
dnl AX_CFLAGS_WARN_ALL_ANSI
|
#
|
||||||
dnl
|
# DESCRIPTION
|
||||||
dnl For the GNU CC compiler it will be -Wall (and -ansi -pedantic) The
|
#
|
||||||
dnl result is added to the shellvar being CFLAGS by default.
|
# Try to find a compiler option that enables most reasonable
|
||||||
dnl
|
# warnings. This macro is directly derived from VL_PROG_CC_WARNINGS
|
||||||
dnl Currently this macro knows about GCC, Solaris C compiler, Digital
|
# which is split up into two AX_CFLAGS_WARN_ALL and
|
||||||
dnl Unix C compiler, C for AIX Compiler, HP-UX C compiler, IRIX C
|
# AX_CFLAGS_WARN_ALL_ANSI
|
||||||
dnl compiler, NEC SX-5 (Super-UX 10) C compiler, and Cray J90 (Unicos
|
#
|
||||||
dnl 10.0.0.8) C compiler.
|
# For the GNU CC compiler it will be -Wall (and -ansi -pedantic) The
|
||||||
dnl
|
# result is added to the shellvar being CFLAGS by default.
|
||||||
dnl - $1 shell-variable-to-add-to : CFLAGS
|
#
|
||||||
dnl - $2 add-value-if-not-found : nothing
|
# Currently this macro knows about GCC, Solaris C compiler, Digital
|
||||||
dnl - $3 action-if-found : add value to shellvariable
|
# Unix C compiler, C for AIX Compiler, HP-UX C compiler, IRIX C
|
||||||
dnl - $4 action-if-not-found : nothing
|
# compiler, NEC SX-5 (Super-UX 10) C compiler, and Cray J90 (Unicos
|
||||||
dnl
|
# 10.0.0.8) C compiler.
|
||||||
dnl @category C
|
#
|
||||||
dnl @author Guido Draheim <guidod@gmx.de>
|
# - $1 shell-variable-to-add-to : CFLAGS
|
||||||
dnl @version 2003-01-06
|
# - $2 add-value-if-not-found : nothing
|
||||||
dnl @license GPLWithACException
|
# - $3 action-if-found : add value to shellvariable
|
||||||
|
# - $4 action-if-not-found : nothing
|
||||||
|
#
|
||||||
|
# LAST MODIFICATION
|
||||||
|
#
|
||||||
|
# 2006-12-12
|
||||||
|
#
|
||||||
|
# COPYLEFT
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006 Guido U. Draheim <guidod@gmx.de>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 2 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA.
|
||||||
|
#
|
||||||
|
# As a special exception, the respective Autoconf Macro's copyright
|
||||||
|
# owner gives unlimited permission to copy, distribute and modify the
|
||||||
|
# configure scripts that are the output of Autoconf when processing
|
||||||
|
# the Macro. You need not follow the terms of the GNU General Public
|
||||||
|
# License when using or distributing such scripts, even though
|
||||||
|
# portions of the text of the Macro appear in them. The GNU General
|
||||||
|
# Public License (GPL) does govern all other use of the material that
|
||||||
|
# constitutes the Autoconf Macro.
|
||||||
|
#
|
||||||
|
# This special exception to the GPL applies to versions of the
|
||||||
|
# Autoconf Macro released by the Autoconf Macro Archive. When you
|
||||||
|
# make and distribute a modified version of the Autoconf Macro, you
|
||||||
|
# may extend this special exception to the GPL to apply to your
|
||||||
|
# modified version as well.
|
||||||
|
|
||||||
AC_DEFUN([AX_CFLAGS_WARN_ALL_ANSI],[dnl
|
AC_DEFUN([AX_CFLAGS_WARN_ALL_ANSI],[dnl
|
||||||
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
AS_VAR_PUSHDEF([FLAGS],[CFLAGS])dnl
|
||||||
@@ -77,7 +116,7 @@ AS_VAR_PUSHDEF([VAR],[ac_cv_cxxflags_warn_all_ansi])dnl
|
|||||||
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for maximum ansi warnings],
|
AC_CACHE_CHECK([m4_ifval($1,$1,FLAGS) for maximum ansi warnings],
|
||||||
VAR,[VAR="no, unknown"
|
VAR,[VAR="no, unknown"
|
||||||
AC_LANG_SAVE
|
AC_LANG_SAVE
|
||||||
AC_LANG_CXX
|
AC_LANG_CPLUSPLUS
|
||||||
ac_save_[]FLAGS="$[]FLAGS"
|
ac_save_[]FLAGS="$[]FLAGS"
|
||||||
# IRIX C compiler:
|
# IRIX C compiler:
|
||||||
# -use_readonly_const is the default for IRIX C,
|
# -use_readonly_const is the default for IRIX C,
|
||||||
|
|||||||
@@ -1,13 +1,52 @@
|
|||||||
dnl @synopsis TYPE_SOCKLEN_T
|
##### http://autoconf-archive.cryp.to/type_socklen_t.html
|
||||||
dnl
|
#
|
||||||
dnl Check whether sys/socket.h defines type socklen_t. Please note that
|
# SYNOPSIS
|
||||||
dnl some systems require sys/types.h to be included before sys/socket.h
|
#
|
||||||
dnl can be compiled.
|
# TYPE_SOCKLEN_T
|
||||||
dnl
|
#
|
||||||
dnl @category Misc
|
# DESCRIPTION
|
||||||
dnl @author Lars Brinkhoff <lars@nocrew.org>
|
#
|
||||||
dnl @version 2005-01-11
|
# Check whether sys/socket.h defines type socklen_t. Please note that
|
||||||
dnl @license GPLWithACException
|
# some systems require sys/types.h to be included before sys/socket.h
|
||||||
|
# can be compiled.
|
||||||
|
#
|
||||||
|
# LAST MODIFICATION
|
||||||
|
#
|
||||||
|
# 2005-01-11
|
||||||
|
#
|
||||||
|
# COPYLEFT
|
||||||
|
#
|
||||||
|
# Copyright (c) 2005 Lars Brinkhoff <lars@nocrew.org>
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License as
|
||||||
|
# published by the Free Software Foundation; either version 2 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful, but
|
||||||
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
# General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
||||||
|
# 02111-1307, USA.
|
||||||
|
#
|
||||||
|
# As a special exception, the respective Autoconf Macro's copyright
|
||||||
|
# owner gives unlimited permission to copy, distribute and modify the
|
||||||
|
# configure scripts that are the output of Autoconf when processing
|
||||||
|
# the Macro. You need not follow the terms of the GNU General Public
|
||||||
|
# License when using or distributing such scripts, even though
|
||||||
|
# portions of the text of the Macro appear in them. The GNU General
|
||||||
|
# Public License (GPL) does govern all other use of the material that
|
||||||
|
# constitutes the Autoconf Macro.
|
||||||
|
#
|
||||||
|
# This special exception to the GPL applies to versions of the
|
||||||
|
# Autoconf Macro released by the Autoconf Macro Archive. When you
|
||||||
|
# make and distribute a modified version of the Autoconf Macro, you
|
||||||
|
# may extend this special exception to the GPL to apply to your
|
||||||
|
# modified version as well.
|
||||||
|
|
||||||
AC_DEFUN([TYPE_SOCKLEN_T],
|
AC_DEFUN([TYPE_SOCKLEN_T],
|
||||||
[AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
|
[AC_CACHE_CHECK([for socklen_t], ac_cv_type_socklen_t,
|
||||||
|
|||||||
@@ -30,7 +30,8 @@
|
|||||||
///////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#include "LinkedList.h"
|
#include "LinkedList.h"
|
||||||
#ifdef __FreeBSD__
|
#include <sys/param.h>
|
||||||
|
#if (defined(BSD) && BSD >= 199306)
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#else
|
#else
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
|
|||||||
@@ -96,12 +96,14 @@ SetPolicyType( PolicyType in )
|
|||||||
#else
|
#else
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
return sched_setscheduler( 0, in);
|
return sched_setscheduler( 0, in);
|
||||||
#else
|
#elif defined(_POSIX_PRIORITY_SCHEDULING) && _POSIX_PRIORITY_SCHEDULING > 0
|
||||||
struct sched_param current;
|
struct sched_param current;
|
||||||
|
|
||||||
sched_getparam( 0, ¤t );
|
sched_getparam( 0, ¤t );
|
||||||
current.sched_priority = DEFAULT_SCHED_PARAM;
|
current.sched_priority = DEFAULT_SCHED_PARAM;
|
||||||
return sched_setscheduler( 0, in, ¤t );
|
return sched_setscheduler( 0, in, ¤t );
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
@@ -123,7 +125,7 @@ SetPolicyType( PolicyType in )
|
|||||||
static int
|
static int
|
||||||
SetPriority( ThreadPriority priority )
|
SetPriority( ThreadPriority priority )
|
||||||
{
|
{
|
||||||
|
#if defined(_POSIX_PRIORITY_SCHEDULING) && _POSIX_PRIORITY_SCHEDULING > 0
|
||||||
int currentPolicy;
|
int currentPolicy;
|
||||||
int minPriority = 0;
|
int minPriority = 0;
|
||||||
int maxPriority = 0;
|
int maxPriority = 0;
|
||||||
@@ -155,7 +157,9 @@ SetPriority( ThreadPriority priority )
|
|||||||
|
|
||||||
return pthread_setschedparam( ithread_self(), currentPolicy,
|
return pthread_setschedparam( ithread_self(), currentPolicy,
|
||||||
&newPriority );
|
&newPriority );
|
||||||
|
#else
|
||||||
|
return 0;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@@ -354,18 +358,25 @@ tp->stats.totalJobsLQ++; tp->stats.totalTimeLQ += diff; break; default:
|
|||||||
* Parameters:
|
* Parameters:
|
||||||
*
|
*
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
static void SetSeed() {
|
static void SetSeed() {
|
||||||
struct timeb t;
|
struct timeb t;
|
||||||
|
|
||||||
ftime( &t );
|
ftime( &t );
|
||||||
#if defined(WIN32)
|
#if defined(WIN32)
|
||||||
srand( ( unsigned int )t.millitm + (unsigned int)ithread_get_current_thread_id().p );
|
srand( ( unsigned int )t.millitm + (unsigned int)ithread_get_current_thread_id().p );
|
||||||
#elif defined(__FreeBSD__)
|
#elif defined(__FreeBSD__)
|
||||||
srand( ( unsigned int )t.millitm + (unsigned int)ithread_get_current_thread_id() );
|
srand( ( unsigned int )t.millitm + (unsigned int)ithread_get_current_thread_id() );
|
||||||
|
#elif defined(__linux__)
|
||||||
|
srand( ( unsigned int )t.millitm + ithread_get_current_thread_id() );
|
||||||
#else
|
#else
|
||||||
srand( ( unsigned int )t.millitm + ithread_get_current_thread_id() );
|
{
|
||||||
|
volatile union { volatile pthread_t tid; volatile unsigned i; } idu;
|
||||||
|
|
||||||
|
idu.tid = ithread_get_current_thread_id();
|
||||||
|
srand( ( unsigned int )t.millitm + idu.i );
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* Function: WorkerThread
|
* Function: WorkerThread
|
||||||
|
|||||||
@@ -31,7 +31,8 @@
|
|||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#ifdef __FreeBSD__
|
#include <sys/param.h>
|
||||||
|
#if (defined(BSD) && BSD >= 199306)
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#else
|
#else
|
||||||
#include <malloc.h>
|
#include <malloc.h>
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
|
|
||||||
#
|
#
|
||||||
# "Makefile.am" for "libupnp/upnp"
|
# "Makefile.am" for "libupnp/upnp"
|
||||||
#
|
#
|
||||||
# Copyright (C) 2005 R<>mi Turboult <r3mi@users.sourceforge.net>
|
# Copyright (C) 2005 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
#
|
#
|
||||||
|
|
||||||
SUBDIRS = doc . sample
|
SUBDIRS = doc . sample
|
||||||
@@ -23,14 +22,14 @@ LDADD = \
|
|||||||
|
|
||||||
|
|
||||||
upnpincludedir = $(includedir)/upnp
|
upnpincludedir = $(includedir)/upnp
|
||||||
upnpinclude_HEADERS = inc/upnp.h
|
upnpinclude_HEADERS = \
|
||||||
|
inc/upnp.h \
|
||||||
|
inc/upnpdebug.h
|
||||||
|
|
||||||
nodist_upnpinclude_HEADERS = inc/upnpconfig.h
|
nodist_upnpinclude_HEADERS = inc/upnpconfig.h
|
||||||
if ENABLE_TOOLS
|
if ENABLE_TOOLS
|
||||||
upnpinclude_HEADERS += inc/upnptools.h
|
upnpinclude_HEADERS += inc/upnptools.h
|
||||||
endif
|
endif
|
||||||
if ENABLE_DEBUG
|
|
||||||
upnpinclude_HEADERS += inc/upnpdebug.h
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
lib_LTLIBRARIES = libupnp.la
|
lib_LTLIBRARIES = libupnp.la
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
#
|
#
|
||||||
# "Makefile.am" for "libunp/upnp/doc"
|
# "Makefile.am" for "libunp/upnp/doc"
|
||||||
#
|
#
|
||||||
# (C) Copyright 2005 R<>mi Turboult <r3mi@users.sourceforge.net>
|
# (C) Copyright 2005 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
#
|
#
|
||||||
##########################################################################
|
##########################################################################
|
||||||
#
|
#
|
||||||
|
|||||||
Binary file not shown.
@@ -47,7 +47,8 @@
|
|||||||
|
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#ifdef __FreeBSD__
|
#include <sys/param.h>
|
||||||
|
#if (defined(BSD) && BSD >= 199306)
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#endif
|
#endif
|
||||||
#include "ixml.h"
|
#include "ixml.h"
|
||||||
@@ -828,46 +829,42 @@ struct Upnp_Event
|
|||||||
* Upnp_Discovery structure correctly.
|
* Upnp_Discovery structure correctly.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
typedef struct sockaddr_in SOCKADDRIN;
|
|
||||||
|
|
||||||
/** Returned in a {\bf UPNP_DISCOVERY_RESULT} callback. */
|
/** Returned in a {\bf UPNP_DISCOVERY_RESULT} callback. */
|
||||||
|
|
||||||
struct Upnp_Discovery
|
struct Upnp_Discovery
|
||||||
{
|
{
|
||||||
|
/** The result code of the {\bf UpnpSearchAsync} call. */
|
||||||
/** The result code of the {\bf UpnpSearchAsync} call. */
|
int ErrCode;
|
||||||
int ErrCode;
|
|
||||||
|
|
||||||
/** The expiration time of the advertisement. */
|
/** The expiration time of the advertisement. */
|
||||||
int Expires;
|
int Expires;
|
||||||
|
|
||||||
/** The unique device identifier. */
|
|
||||||
char DeviceId[LINE_SIZE];
|
|
||||||
|
|
||||||
/** The device type. */
|
|
||||||
char DeviceType[LINE_SIZE];
|
|
||||||
|
|
||||||
/** The service type. */
|
|
||||||
char ServiceType[LINE_SIZE];
|
|
||||||
|
|
||||||
/** The service version. */
|
|
||||||
char ServiceVer[LINE_SIZE];
|
|
||||||
|
|
||||||
/** The URL to the UPnP description document for the device. */
|
|
||||||
char Location[LINE_SIZE];
|
|
||||||
|
|
||||||
/** The operating system the device is running. */
|
|
||||||
char Os[LINE_SIZE];
|
|
||||||
|
|
||||||
/** Date when the response was generated. */
|
/** The unique device identifier. */
|
||||||
char Date[LINE_SIZE];
|
char DeviceId[LINE_SIZE];
|
||||||
|
|
||||||
/** Confirmation that the MAN header was understood by the device. */
|
|
||||||
char Ext[LINE_SIZE];
|
|
||||||
|
|
||||||
/** The host address of the device responding to the search. */
|
|
||||||
SOCKADDRIN * DestAddr;
|
|
||||||
|
|
||||||
|
/** The device type. */
|
||||||
|
char DeviceType[LINE_SIZE];
|
||||||
|
|
||||||
|
/** The service type. */
|
||||||
|
char ServiceType[LINE_SIZE];
|
||||||
|
|
||||||
|
/** The service version. */
|
||||||
|
char ServiceVer[LINE_SIZE];
|
||||||
|
|
||||||
|
/** The URL to the UPnP description document for the device. */
|
||||||
|
char Location[LINE_SIZE];
|
||||||
|
|
||||||
|
/** The operating system the device is running. */
|
||||||
|
char Os[LINE_SIZE];
|
||||||
|
|
||||||
|
/** Date when the response was generated. */
|
||||||
|
char Date[LINE_SIZE];
|
||||||
|
|
||||||
|
/** Confirmation that the MAN header was understood by the device. */
|
||||||
|
char Ext[LINE_SIZE];
|
||||||
|
|
||||||
|
/** The host address of the device responding to the search. */
|
||||||
|
struct sockaddr_in DestAddr;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Returned along with a {\bf UPNP_EVENT_SUBSCRIBE_COMPLETE} or {\bf
|
/** Returned along with a {\bf UPNP_EVENT_SUBSCRIBE_COMPLETE} or {\bf
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/* -*- C -*- */
|
/* -*- C -*- */
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
*
|
*
|
||||||
* Copyright (c) 2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
* Copyright (c) 2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
*
|
*
|
||||||
* Copyright (c) 2000-2003 Intel Corporation
|
* Copyright (c) 2000-2003 Intel Corporation
|
||||||
* Copyright (c) 2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
* Copyright (c) 2006 R<>mi Turboult <r3mi@users.sourceforge.net>
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without
|
* Redistribution and use in source and binary forms, with or without
|
||||||
@@ -246,11 +246,15 @@ static UPNP_INLINE int DebugAtThisLevel(
|
|||||||
* Returns: void
|
* Returns: void
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
void UpnpPrintf (Upnp_LogLevel DLevel, Dbg_Module Module,
|
void UpnpPrintf(
|
||||||
const char* DbgFileName, int DbgLineNo,
|
Upnp_LogLevel DLevel,
|
||||||
const char* FmtStr,
|
Dbg_Module Module,
|
||||||
...)
|
const char* DbgFileName,
|
||||||
|
int DbgLineNo,
|
||||||
|
const char* FmtStr,
|
||||||
|
...)
|
||||||
#if (__GNUC__ >= 3)
|
#if (__GNUC__ >= 3)
|
||||||
|
/* This enables printf like format checking by the compiler */
|
||||||
__attribute__((format (__printf__, 5, 6)))
|
__attribute__((format (__printf__, 5, 6)))
|
||||||
#endif
|
#endif
|
||||||
;
|
;
|
||||||
|
|||||||
@@ -79,8 +79,9 @@ endif
|
|||||||
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
EXTRA_DIST = \
|
||||||
tvdevice/web/tvcontrolSCPD.xml \
|
web/tvcombodesc.xml \
|
||||||
tvdevice/web/tvdevicedesc.xml \
|
web/tvcontrolSCPD.xml \
|
||||||
tvdevice/web/tvdevicepres.html \
|
web/tvdevicedesc.xml \
|
||||||
tvdevice/web/tvpictureSCPD.xml
|
web/tvdevicepres.html \
|
||||||
|
web/tvpictureSCPD.xml
|
||||||
|
|
||||||
|
|||||||
@@ -37,6 +37,7 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
|
#include <sys/types.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
@@ -53,6 +54,11 @@
|
|||||||
#include <sys/ioctl.h>
|
#include <sys/ioctl.h>
|
||||||
#include <sys/utsname.h>
|
#include <sys/utsname.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
|
#include <sys/param.h>
|
||||||
|
#if (defined(BSD) && BSD >= 199306)
|
||||||
|
#include <ifaddrs.h>
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#include "upnpapi.h"
|
#include "upnpapi.h"
|
||||||
#include "httpreadwrite.h"
|
#include "httpreadwrite.h"
|
||||||
@@ -73,6 +79,8 @@
|
|||||||
#include "urlconfig.h"
|
#include "urlconfig.h"
|
||||||
#endif // INTERNAL_WEB_SERVER
|
#endif // INTERNAL_WEB_SERVER
|
||||||
|
|
||||||
|
virtualDirList *pVirtualDirList;
|
||||||
|
|
||||||
// Mutex to synchronize the subscription handling at the client side
|
// Mutex to synchronize the subscription handling at the client side
|
||||||
CLIENTONLY( ithread_mutex_t GlobalClientSubscribeMutex; )
|
CLIENTONLY( ithread_mutex_t GlobalClientSubscribeMutex; )
|
||||||
|
|
||||||
@@ -3287,17 +3295,15 @@ UpnpDownloadXmlDoc( const char *url,
|
|||||||
} else {
|
} else {
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
xml_buf = ixmlPrintNode( ( IXML_Node * ) * xmlDoc );
|
xml_buf = ixmlPrintNode( ( IXML_Node * ) * xmlDoc );
|
||||||
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
||||||
"Printing the Parsed xml document \n %s\n",
|
"Printing the Parsed xml document \n %s\n", xml_buf );
|
||||||
xml_buf );
|
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
||||||
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
"****************** END OF Parsed XML Doc *****************\n" );
|
||||||
"****************** END OF Parsed XML Doc *****************\n" );
|
ixmlFreeDOMString( xml_buf );
|
||||||
ixmlFreeDOMString( xml_buf );
|
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
||||||
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
"Exiting UpnpDownloadXmlDoc\n" );
|
||||||
"Exiting UpnpDownloadXmlDoc\n" );
|
|
||||||
#endif
|
#endif
|
||||||
|
return UPNP_E_SUCCESS;
|
||||||
return UPNP_E_SUCCESS;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3717,8 +3723,44 @@ void printNodes( IXML_Node * tmpRoot, int depth )
|
|||||||
strcpy( out, inet_ntoa(LocalAddr.sin_addr));
|
strcpy( out, inet_ntoa(LocalAddr.sin_addr));
|
||||||
}
|
}
|
||||||
return UPNP_E_SUCCESS;
|
return UPNP_E_SUCCESS;
|
||||||
#else
|
#elif (defined(BSD) && BSD >= 199306)
|
||||||
|
struct ifaddrs *ifap, *ifa;
|
||||||
|
|
||||||
|
if (getifaddrs(&ifap) != 0) {
|
||||||
|
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
||||||
|
"DiscoverInterfaces: getifaddrs() returned error\n" );
|
||||||
|
return UPNP_E_INIT;
|
||||||
|
}
|
||||||
|
|
||||||
|
// cycle through available interfaces
|
||||||
|
for (ifa = ifap; ifa != NULL; ifa = ifa->ifa_next) {
|
||||||
|
// Skip loopback, point-to-point and down interfaces,
|
||||||
|
// except don't skip down interfaces
|
||||||
|
// if we're trying to get a list of configurable interfaces.
|
||||||
|
if( ( ifa->ifa_flags & IFF_LOOPBACK )
|
||||||
|
|| ( !( ifa->ifa_flags & IFF_UP ) ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if( ifa->ifa_addr->sa_family == AF_INET ) {
|
||||||
|
// We don't want the loopback interface.
|
||||||
|
if( ((struct sockaddr_in *)(ifa->ifa_addr))->sin_addr.s_addr ==
|
||||||
|
htonl( INADDR_LOOPBACK ) ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
strncpy( out, inet_ntoa( ((struct sockaddr_in *)(ifa->ifa_addr))->
|
||||||
|
sin_addr ), LINE_SIZE );
|
||||||
|
out[LINE_SIZE-1] = '\0';
|
||||||
|
UpnpPrintf( UPNP_ALL, API, __FILE__, __LINE__,
|
||||||
|
"Inside getlocalhostname : after strncpy %s\n",
|
||||||
|
out );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
freeifaddrs(ifap);
|
||||||
|
|
||||||
|
return ifa ? UPNP_E_SUCCESS : UPNP_E_INIT;
|
||||||
|
#else
|
||||||
char szBuffer[MAX_INTERFACES * sizeof( struct ifreq )];
|
char szBuffer[MAX_INTERFACES * sizeof( struct ifreq )];
|
||||||
struct ifconf ifConf;
|
struct ifconf ifConf;
|
||||||
struct ifreq ifReq;
|
struct ifreq ifReq;
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ int DebugAtThisLevel(
|
|||||||
IN Upnp_LogLevel DLevel,
|
IN Upnp_LogLevel DLevel,
|
||||||
IN Dbg_Module Module)
|
IN Dbg_Module Module)
|
||||||
{
|
{
|
||||||
int ret = g_log_level >= DLevel;
|
int ret = DLevel <= g_log_level;
|
||||||
ret &=
|
ret &=
|
||||||
DEBUG_ALL ||
|
DEBUG_ALL ||
|
||||||
(Module == SSDP && DEBUG_SSDP ) ||
|
(Module == SSDP && DEBUG_SSDP ) ||
|
||||||
|
|||||||
@@ -396,7 +396,7 @@ scanner_get_str( IN scanner_t * scanner )
|
|||||||
* Note :
|
* Note :
|
||||||
************************************************************************/
|
************************************************************************/
|
||||||
#warning The only use of the function 'scanner_pushback()' in the code is commented out.
|
#warning The only use of the function 'scanner_pushback()' in the code is commented out.
|
||||||
#warning 'scanner_pushback()' is a good candidate for removal.
|
#warning 'scanner_pushback()' is a candidate for removal.
|
||||||
static UPNP_INLINE void
|
static UPNP_INLINE void
|
||||||
scanner_pushback( INOUT scanner_t * scanner,
|
scanner_pushback( INOUT scanner_t * scanner,
|
||||||
IN size_t pushback_bytes )
|
IN size_t pushback_bytes )
|
||||||
@@ -966,7 +966,7 @@ read_until_crlf( INOUT scanner_t * scanner,
|
|||||||
* PARSE_INCOMPLETE
|
* PARSE_INCOMPLETE
|
||||||
************************************************************************/
|
************************************************************************/
|
||||||
#warning There are currently no uses of the function 'skip_to_end_of_header()' in the code.
|
#warning There are currently no uses of the function 'skip_to_end_of_header()' in the code.
|
||||||
#warning 'skip_to_end_of_header()' is a good candidate for removal.
|
#warning 'skip_to_end_of_header()' is a candidate for removal.
|
||||||
static UPNP_INLINE int
|
static UPNP_INLINE int
|
||||||
skip_to_end_of_header( INOUT scanner_t * scanner )
|
skip_to_end_of_header( INOUT scanner_t * scanner )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -231,6 +231,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 ) {
|
if( bRead ) {
|
||||||
// read data
|
// read data
|
||||||
numBytes = recv( sockfd, buffer, bufsize,MSG_NOSIGNAL);
|
numBytes = recv( sockfd, buffer, bufsize,MSG_NOSIGNAL);
|
||||||
@@ -243,6 +252,9 @@ sock_read_write( IN SOCKINFO * info,
|
|||||||
send( sockfd, buffer + bytes_sent, byte_left,
|
send( sockfd, buffer + bytes_sent, byte_left,
|
||||||
MSG_DONTROUTE|MSG_NOSIGNAL);
|
MSG_DONTROUTE|MSG_NOSIGNAL);
|
||||||
if( num_written == -1 ) {
|
if( num_written == -1 ) {
|
||||||
|
#ifdef SO_NOSIGPIPE
|
||||||
|
setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &old, olen);
|
||||||
|
#endif
|
||||||
return num_written;
|
return num_written;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -253,6 +265,11 @@ sock_read_write( IN SOCKINFO * info,
|
|||||||
numBytes = bytes_sent;
|
numBytes = bytes_sent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef SO_NOSIGPIPE
|
||||||
|
setsockopt(sockfd, SOL_SOCKET, SO_NOSIGPIPE, &old, olen);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if( numBytes < 0 ) {
|
if( numBytes < 0 ) {
|
||||||
return UPNP_E_SOCKET_ERROR;
|
return UPNP_E_SOCKET_ERROR;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -640,11 +640,38 @@ parse_hostport( const char *in,
|
|||||||
if ( h == NULL ) {
|
if ( h == NULL ) {
|
||||||
errCode = 1;
|
errCode = 1;
|
||||||
}
|
}
|
||||||
#else
|
#elif defined(__linux__)
|
||||||
errCode = gethostbyname_r( temp_host_name,
|
errCode = gethostbyname_r( temp_host_name,
|
||||||
&h_buf,
|
&h_buf,
|
||||||
temp_hostbyname_buff,
|
temp_hostbyname_buff,
|
||||||
BUFFER_SIZE, &h, &errcode );
|
BUFFER_SIZE, &h, &errcode );
|
||||||
|
#else
|
||||||
|
{
|
||||||
|
struct addrinfo hints, *res, *res0;
|
||||||
|
|
||||||
|
h = NULL;
|
||||||
|
memset(&hints, 0, sizeof(hints));
|
||||||
|
hints.ai_family = PF_INET;
|
||||||
|
hints.ai_socktype = SOCK_STREAM;
|
||||||
|
errCode = getaddrinfo(temp_host_name, "http", &hints, &res0);
|
||||||
|
|
||||||
|
if (!errCode) {
|
||||||
|
for (res = res0; res; res = res->ai_next) {
|
||||||
|
if (res->ai_family == PF_INET &&
|
||||||
|
res->ai_addr->sa_family == AF_INET)
|
||||||
|
{
|
||||||
|
h = &h_buf;
|
||||||
|
h->h_addrtype = res->ai_addr->sa_family;
|
||||||
|
h->h_length = 4;
|
||||||
|
h->h_addr = (void *) temp_hostbyname_buff;
|
||||||
|
*(struct in_addr *)h->h_addr =
|
||||||
|
((struct sockaddr_in *)res->ai_addr)->sin_addr;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
freeaddrinfo(res0);
|
||||||
|
}
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if( errCode == 0 ) {
|
if( errCode == 0 ) {
|
||||||
|
|||||||
@@ -176,7 +176,6 @@ void UpnpThreadDistribution(struct UpnpNonblockParam * Param);
|
|||||||
void AutoAdvertise(void *input);
|
void AutoAdvertise(void *input);
|
||||||
int getlocalhostname(char *out);
|
int getlocalhostname(char *out);
|
||||||
|
|
||||||
virtualDirList *pVirtualDirList;
|
|
||||||
extern WebServerState bWebServerState;
|
extern WebServerState bWebServerState;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -159,7 +159,7 @@ ssdp_handle_ctrlpt_msg( IN http_message_t * hmsg,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// dest addr
|
// dest addr
|
||||||
param.DestAddr = dest_addr;
|
memcpy(¶m.DestAddr, dest_addr, sizeof(struct sockaddr_in) );
|
||||||
|
|
||||||
// EXT
|
// EXT
|
||||||
param.Ext[0] = '\0';
|
param.Ext[0] = '\0';
|
||||||
@@ -267,7 +267,7 @@ ssdp_handle_ctrlpt_msg( IN http_message_t * hmsg,
|
|||||||
strlen( param.Location ) == 0 || !usn_found || !st_found ) {
|
strlen( param.Location ) == 0 || !usn_found || !st_found ) {
|
||||||
return; // bad reply
|
return; // bad reply
|
||||||
}
|
}
|
||||||
//check each current search
|
// check each current search
|
||||||
HandleLock();
|
HandleLock();
|
||||||
if( GetClientHandleInfo( &handle, &ctrlpt_info ) != HND_CLIENT ) {
|
if( GetClientHandleInfo( &handle, &ctrlpt_info ) != HND_CLIENT ) {
|
||||||
HandleUnlock();
|
HandleUnlock();
|
||||||
@@ -275,14 +275,14 @@ ssdp_handle_ctrlpt_msg( IN http_message_t * hmsg,
|
|||||||
}
|
}
|
||||||
node = ListHead( &ctrlpt_info->SsdpSearchList );
|
node = ListHead( &ctrlpt_info->SsdpSearchList );
|
||||||
|
|
||||||
//temporary add null termination
|
// temporary add null termination
|
||||||
//save_char = hdr_value.buf[ hdr_value.length ];
|
//save_char = hdr_value.buf[ hdr_value.length ];
|
||||||
//hdr_value.buf[ hdr_value.length ] = '\0';
|
//hdr_value.buf[ hdr_value.length ] = '\0';
|
||||||
|
|
||||||
while( node != NULL ) {
|
while( node != NULL ) {
|
||||||
searchArg = node->item;
|
searchArg = node->item;
|
||||||
matched = 0;
|
matched = 0;
|
||||||
//check for match of ST header and search target
|
// check for match of ST header and search target
|
||||||
switch ( searchArg->requestType ) {
|
switch ( searchArg->requestType ) {
|
||||||
case SSDP_ALL:
|
case SSDP_ALL:
|
||||||
{
|
{
|
||||||
@@ -327,7 +327,7 @@ ssdp_handle_ctrlpt_msg( IN http_message_t * hmsg,
|
|||||||
}
|
}
|
||||||
|
|
||||||
if( matched ) {
|
if( matched ) {
|
||||||
//schedule call back
|
// schedule call back
|
||||||
threadData =
|
threadData =
|
||||||
( ResultData * ) malloc( sizeof( ResultData ) );
|
( ResultData * ) malloc( sizeof( ResultData ) );
|
||||||
if( threadData != NULL ) {
|
if( threadData != NULL ) {
|
||||||
@@ -366,7 +366,7 @@ ssdp_handle_ctrlpt_msg( IN http_message_t * hmsg,
|
|||||||
*
|
*
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
#warning There are currently no uses of the function 'process_reply()' in the code.
|
#warning There are currently no uses of the function 'process_reply()' in the code.
|
||||||
#warning 'process_reply()' is a good candidate for removal.
|
#warning 'process_reply()' is a candidate for removal.
|
||||||
static UPNP_INLINE void
|
static UPNP_INLINE void
|
||||||
process_reply( IN char *request_buf,
|
process_reply( IN char *request_buf,
|
||||||
IN int buf_len,
|
IN int buf_len,
|
||||||
|
|||||||
@@ -32,6 +32,7 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
|
#include <sys/types.h>
|
||||||
#include <sys/socket.h>
|
#include <sys/socket.h>
|
||||||
#include <netinet/in.h>
|
#include <netinet/in.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
|
|||||||
Reference in New Issue
Block a user