Commit Graph

112 Commits

Author SHA1 Message Date
Marcelo Roberto Jimenez
6b0272d66b SF Patch Tracker [ 2857611 ] Declare a few functions to have proper
(void) argument list.
	Submitted By: zephyrus ( zephyrus00jp )
	
	In a publicly installed headers, a few functions are declared without any
	arguments at all, a la "()".
	When I used gcc's -Wimplict and -Wstrict-prototypes to check for the
	mismatch of
	function prototype declarations and their usage in my own program,
	some headers from libupnp-1.6.6 produced warnings.

	They are not strictly bugs, but pretty much annoying. This is 2009, and
	almost all the important compilers
	understand ISO-C.

	So the offending functions are declared as "(void") to show that they have
	no arguments at all.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@493 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2010-03-15 15:33:40 +00:00
Marcelo Roberto Jimenez
b77fead68a SF Patch Tracker [ 2964685 ] patch for avoiding inet_ntoa (1.8.0)
Seems like SF's tracker won't let me add a patch to someone else's issue ?!
	This refers to https://sourceforge.net/support/tracker.php?aid=2724578
	
	The calls to inet_ntoa are in getlocalhostname(), which is called from
	UpnpInit when it is returning the bound IP address. 
	UpnpInit/getlocalhostname hasn't been updated to IPv6, I presume this is
	deliberate so that it doesn't start returning IPv6 addresses and
	overwriting the caller's IPv4-sized allocation.
	
	The attached patch just updates getlocalhostname to use inet_ntop instead
	of inet_ntoa, and also documents the fact that UpnpInit is IPv4 only whilst
	UpnpInnit2 is both IPv4 and IPv6.
	
	A fuller solution might be to change UpnpInit to use some variant on
	UpnpGetIfInfo. UpnpInit could still be left as IPv4 only if desired -
	perhaps UpnpGetIfInfo could take an option for the desired address family.
	getlocalhostname and its own copy of the interface scanning code would then
	be redundant. I don't have IPv6 capability here though so I'm reluctant to
	change the IPv6 code, as I have no way to test it.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@491 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2010-03-15 03:19:08 +00:00
Marcelo Roberto Jimenez
bb55b1ed9c * SF Patch Tracker [ 2964687 ] Add new string based accessors to upnp
object API

	As per email to pupnp-devel, this is the patch to add the _strget_
	accessors for string-like objects in the interface.
	
	Will add a further patch shortly to udpate the sample programs.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@488 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2010-03-15 01:48:24 +00:00
Marcelo Roberto Jimenez
78f5e5004f Fix for application compiler warning: "PRId64" redefined.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@479 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-08-14 12:00:01 +00:00
Marcelo Roberto Jimenez
943483e8b7 UpnpInet.h is now the only place where winsock2.h and Ws2tcpip.h are included.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@455 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-07-21 22:42:54 +00:00
Marcelo Roberto Jimenez
d991fbe26c ifdef is more clear than ifndef here.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@454 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-07-17 21:31:42 +00:00
Marcelo Roberto Jimenez
c89f83497e White spaces.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@443 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-14 21:32:02 +00:00
Marcelo Roberto Jimenez
219871b1dc Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@437 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-12 03:41:08 +00:00
Marcelo Roberto Jimenez
5c008e3634 Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@432 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-10 04:31:44 +00:00
Marcelo Roberto Jimenez
7f4bac9727 Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@431 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-10 03:23:08 +00:00
Marcelo Roberto Jimenez
f00752efbd Doxygen and include file reorganization.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@430 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-09 23:19:00 +00:00
Marcelo Roberto Jimenez
b78f27dd3e Typo.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@429 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-09 16:25:29 +00:00
Marcelo Roberto Jimenez
9e3b03e229 Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@428 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-09 16:24:38 +00:00
Marcelo Roberto Jimenez
aa63ef88f1 Removed all #include's from ixml.h.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@422 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-06 22:19:14 +00:00
Marcelo Roberto Jimenez
37ecd99305 Include file reorganization.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@419 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-06 21:32:51 +00:00
Marcelo Roberto Jimenez
9fc2c364fa Added EXPORT_SPEC to the new API functions, so that these functions get
exported on win32 DLLs. Also did some doxygenation.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@418 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-05 22:41:50 +00:00
Marcelo Roberto Jimenez
ef0835d038 Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@407 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-04 03:48:50 +00:00
Marcelo Roberto Jimenez
c1ac15fccc Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@401 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-02 22:42:33 +00:00
Marcelo Roberto Jimenez
1175a0cadb Doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@399 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-06-02 03:43:25 +00:00
Marcelo Roberto Jimenez
a8521c09cf More doxygen. Now some gena files are documented.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@394 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-26 02:19:24 +00:00
Marcelo Roberto Jimenez
494518b14b Doxygenation and improove debugging in gena.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@392 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-26 00:10:49 +00:00
Marcelo Roberto Jimenez
724700be0d Ported Peter Hartley's patch to compile with mingw.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@391 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-25 00:49:43 +00:00
Marcelo Roberto Jimenez
2e85c471ca Some fixes on the use of struct sockaddr_storage and struct sockaddr.
This patch does not change any behaviour.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@385 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-23 22:15:52 +00:00
Marcelo Roberto Jimenez
35db3e9bba Header file reordering and sanity. White space patch.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@384 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-23 21:55:04 +00:00
Charles Nepveu
0eba550da0 - Fixed the windows VS2005 project for release and debug.
- Fixed the win32 inclusion of "netinet/net.h" -> "ws2tcpip.h"
- Fixed thread ID cast.

git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@381 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-22 20:00:37 +00:00
Marcelo Roberto Jimenez
90f52baa61 Making things easier for the MSC compiler.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@380 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-22 17:24:56 +00:00
Marcelo Roberto Jimenez
094cedc807 Module String renamed to UpnpString due to case insensitive file systems.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@379 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-09 22:44:14 +00:00
Marcelo Roberto Jimenez
9a98f25b95 Improoving IXML debugging.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@378 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-08 17:21:59 +00:00
Marcelo Roberto Jimenez
263e616403 Some white spaces, some doxygen, some code reorganizing.
We should try to return only at the end of the function so that
we can use "objects" reliably.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@375 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-06 19:29:24 +00:00
Marcelo Roberto Jimenez
c60ab8eeac More doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@373 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-06 02:24:12 +00:00
Marcelo Roberto Jimenez
e56a9d68a3 Removing the useless, unused and undocumented function UpnpFree().
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@371 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-05 23:26:37 +00:00
Marcelo Roberto Jimenez
9e54783740 More doxygen. It's a dirty job, but someone has to do it...
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@369 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-05 22:32:44 +00:00
Marcelo Roberto Jimenez
164dce7fc2 More doxygen.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@368 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-05 00:25:22 +00:00
Marcelo Roberto Jimenez
9326b73d06 Doxygenation.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@366 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-04 19:56:15 +00:00
Marcelo Roberto Jimenez
0fb20847a7 Proper name for a hidden data structure.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@365 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-04 01:52:55 +00:00
Marcelo Roberto Jimenez
6b7dc5d340 Coherent name for the EventSubscribe externally exposed data structure.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@364 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-04 01:36:07 +00:00
Marcelo Roberto Jimenez
a86a127f44 White spaces.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@363 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-04 00:57:07 +00:00
Marcelo Roberto Jimenez
7acfd52f6b Hiding UpnpVirtualDirCallbacks and struct virtual_Dir_List.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@362 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-04 00:33:50 +00:00
Marcelo Roberto Jimenez
be2fa49891 White spaces.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@361 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-03 21:49:43 +00:00
Marcelo Roberto Jimenez
d2c34a15de Upnp_Subscription_Request becomes UpnpSubscriptionRequest. One less externally visible data structure.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@360 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-03 21:19:08 +00:00
Marcelo Roberto Jimenez
98a45e17b5 struct Upnp_Event becomes UpnpEvent. One less externally visible data structure.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@359 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-03 15:35:14 +00:00
Marcelo Roberto Jimenez
2e4a96f034 Merged Charles Nepveu's IPv6 work. libupnp now is IPv6 enabled.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@358 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-05-02 17:04:22 +00:00
Marcelo Roberto Jimenez
7206e80127 Start of 1.8.x development. Sorry for the big commit, but in fact it should have been bigger.
The fact that we now have an active developer on branch ipv6 made me do this before I would like to.
The idea here is to hide libupnp internal data structures from the outside world so that
developers can be free to change them without breaking the interface. There is still some work to do
before a formal release, but the samples (device and control point) should be working.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@353 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-04-26 01:20:09 +00:00
Marcelo Roberto Jimenez
0b39b2ad6c * SF Bug Tracker [ 1902668 ] Cannot compile on MSVC
Submitted By Luke Kim - nereusuj
Version 1.6.5 cannot be compiled because of some changes in 1.6.3.
MSVC does not support stdint.h, gettimeofday(), sys/param.h, const int
variables in array size and Windows does not define _WINDOWS_ but define
_WINDOWS.
* MSVC does not understand "const int"'s as declarators of array
dimensions, we must use #define'd constants.
* Use WIN32 instead of _WINDOWS_ or _WINDOWS.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@331 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-03-09 01:16:58 +00:00
Marcelo Roberto Jimenez
156ee82358 Slightly improved error report by showing the sys_errlist string corresponding
to errno.
Also, got rid of two useless constants: UPNP_SOCKETERROR and
UPNP_INVALID_SOCKET. They both mean the same, that a network API function has
failed. -1 is the value to check, not an invented constant.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@319 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-02-06 18:32:09 +00:00
Marcelo Roberto Jimenez
5bc8cae4ea Reverting Peter Hartley's last patch.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@303 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-01-27 01:23:54 +00:00
Marcelo Roberto Jimenez
77f1cff5d5 Peter Hartley's patch for "extra-headers".
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@299 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-01-25 05:04:36 +00:00
Marcelo Roberto Jimenez
5756f589d7 SF Patches Tracker [ 1865812 ] typo in docs comment
Submitted By: Hartmut Holzgraefe - hholzgra
typo in docs comment ACCAPTED instead of ACCEPTED in
@name UPNP_E_UNSUBSCRIBE_UNACCAPTED [-302]
Also, the documentation file name was mispelled and was corrected in
the Makefile.am.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@287 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2008-01-07 12:02:33 +00:00
Marcelo Roberto Jimenez
20905cb7a7 White spaces.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@229 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-11-05 13:09:33 +00:00
Marcelo Roberto Jimenez
5151d45203 * [pupnp-devel] NetBSD & Mac OS X packages and patches.
Rene Hexel's <rh@netbsd.org> patch to compile in NetBSD and Mac OS X.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@205 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-06-09 13:40:22 +00:00
Marcelo Roberto Jimenez
b817ec5152 * 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.


git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@203 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-05-26 05:54:23 +00:00
Marcelo Roberto Jimenez
9bc187d4c6 * Removing the Dbg_Level, InitLog, SetLogFileNames and CloseLog
defines. These were just aliases, no reason to keep them.
* Changed the comments of the include files that expose the UPnP API
to use only C89 comments and no C99 comments.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@198 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-05-25 15:02:12 +00:00
Marcelo Roberto Jimenez
81635d74c1 * More MSVC fixes, using XINLINE instead of inline, MSVC has troubles
with inline. Thanks to David Maass for reporting.
* Changed XINLINE to UPNP_INLINE.
* Lots of white space changes.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@192 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-05-23 13:20:55 +00:00
Marcelo Roberto Jimenez
2c1dba2942 - Fixed a bug in UpnpPrintf, function could call va_start() and return
befor calling va_end().

- Removed all uses of the DBGONLY(x) macro. A static inline empty
function now is used and the compiler takes care of optimizing it out.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@185 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-05-18 13:31:21 +00:00
Marcelo Roberto Jimenez
4ceb6c67d1 * EXPORT_SPEC missing on some declarations in ixml/inc/ixml.h.
Thanks to David Maass.

* sizeof is unsigned, so %zu is more adequate than %zd.

* Using an invented printf directive PRIzu that on MSVC
expands to "lu", and on normal C99 compilers expands to "zu".

* Rewrote raw_find_str. Now it no longer uses strcasestr(), but it
transforms the first input buffer into lowercase.



git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@184 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-05-16 02:02:16 +00:00
Oxy
c3060e0d0b typedef modifications for use with Borland Builder
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@141 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-03-03 14:36:58 +00:00
Oxy
2ac3819f8c typedefs corrected, made MS VC++ specific to fix problems of that compiler
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@140 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-03-02 13:53:08 +00:00
Oxy
0d451c9c8e (long long) cast replaced by a generic data type ulong64 that can be defined separately for every used system/compiler (did not work with VC++)
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@139 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2007-03-01 10:08:04 +00:00
Oxy
635d6ffa93 largefile modification adapted for Windows port
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@83 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2006-08-17 05:31:55 +00:00
Oxy
8c56f16607 largefile patch added
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@82 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2006-08-17 05:19:03 +00:00
Oxy
8c21b2c4d9 Windows-port: some special code and switches for statical libraries added
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@73 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2006-07-31 05:32:33 +00:00
Marcelo Roberto Jimenez
89e7a40fcc Removing unnecessary additional directory level.
git-svn-id: https://pupnp.svn.sourceforge.net/svnroot/pupnp/trunk@29 119443c7-1b9e-41f8-b6fc-b9c35fce742c
2006-07-04 02:44:17 +00:00