Philipp Schafft
c45b02414a
Fix: Do not strcasecmp() content-type if unset (NULL)
...
Thanks to lns for finding it.
2020-02-12 10:59:57 +00:00
Philipp Schafft
d20ca18692
Update: Updated copyright statements
2019-04-28 09:40:47 +00:00
Philipp Schafft
6492a456a1
Feature: Allow enumeration of parser content
2018-09-20 09:58:28 +00:00
Philipp Schafft
03659eb096
Feature: Added reference counting to httpp parser object
2018-09-20 09:58:28 +00:00
Philipp Schafft
aeddcad5df
Feature: Added httpp_request_info()
2018-09-20 09:58:28 +00:00
Philipp Schafft
1f57410788
Fix: Actually insert nodes into the tree if they are new
2018-09-20 09:58:28 +00:00
Philipp Schafft
7d2b9fa3fd
Feature: Added httpp_get_param_var() so multi-value access is possible
2018-09-20 09:58:28 +00:00
Philipp Schafft
53c13dd00e
Update: Replaced next member with an array of values
2018-09-20 09:58:28 +00:00
Philipp Schafft
0117b90aa6
Update: Added a (still unused) next member to the http_var_t structure
2018-09-20 09:58:28 +00:00
Philipp Schafft
09fb1ce137
Fix: Consider extra arguments in HTTP request line invalid
2018-09-12 09:26:59 +00:00
Philipp Schafft
368fbd4442
Update: Code style
2018-09-12 09:22:46 +00:00
Philipp Schafft
31f24e9869
Feature: Added httpp_get_param() which does POST, then queryparams
2018-06-18 21:36:19 +00:00
Philipp Schafft
937268e288
Feature: Added support to parse POST data
2018-06-18 14:39:03 +00:00
Philipp Schafft
ae2a956d88
Feature: Added support for HTTP Methods: OPTIONS, DELETE, TRACE, CONNECT
...
This added support for the standard HTTP/1.1 methods:
* OPTIONS
- Query the server to tell what features are supported.
* DELETE
- Delete a resource on a server. In Icecast2 context this is
about what is known as 'kick source'.
* TRACE
- Asks the server to return the request to the client as body.
The client is to send a body-less request and the server
will return with a 200 OK and the body to to be the exact
bitstream it got from the client (or any (reverse) proxy).
The Content-Type is to be set to 'message/http'.
* CONNECT
- Client asks the server to proxy the request to the given resource.
This hardly seems to make sense for Icecast2 but may be used by
some clients such as libshout. Therefor I added it as well
so we have at least an ID assigned to it.
Please note that this is a ABI breaker and you will need to recompile
your projects (use 'make clean all').
See: RFC2616
2015-02-10 08:42:59 +00:00
Philipp Schafft
536582171d
Prevent various redefined definitions in win32-specific code
...
From: Erik van Pienbroek <epienbro@fedoraproject.org>
Date: Mon, 22 Dec 2014 18:02:09 +0100
2014-12-24 11:40:30 +00:00
Thomas B. Ruecker
8685e6ed5a
Explicitly license httpp log net thread and timing
...
This change was ACKd by all authors and explicitly states the license
to be LGPLv2 in all files to match COPYING. This removes ambiguity
when using these files e.g. as part of libshout.
For a list of authors, pease refer to the copyright headers of each
file.
2014-12-05 09:31:08 +00:00
Philipp Schafft
7572febbd8
expose converting of method names to enum values as httpp_str_to_method()
...
svn path=/icecast/trunk/httpp/; revision=19348
2014-11-22 04:44:47 +00:00
Philipp Schafft
b5fca17bfb
fixing some compiler warnings
...
svn path=/icecast/trunk/httpp/; revision=19281
2014-11-07 23:14:00 +00:00
Philipp Schafft
5983b0f6ba
commited support for HTTP PUT, See #1812
...
svn path=/icecast/trunk/httpp/; revision=18452
2012-07-16 16:05:21 +00:00
Karl Heyes
8e7def3ad4
minor cleanups.
...
svn path=/icecast/trunk/httpp/; revision=16213
2009-07-07 16:37:31 +00:00
Karl Heyes
98546247b1
const updates, again no functional change
...
svn path=/icecast/trunk/httpp/; revision=13560
2007-08-16 22:52:24 +00:00
Karl Heyes
792df7892f
store the original full uri if there are query parameters. small cleanup to
...
prototype definitions
svn path=/icecast/trunk/httpp/; revision=9453
2005-06-15 02:32:26 +00:00
Karl Heyes
431e4d1ac2
simple sanity check
...
svn path=/icecast/trunk/httpp/; revision=9126
2005-04-08 03:48:08 +00:00
oddsock
cec0361503
removal of old and unused code
...
add '+' to those fields that are url decoded.
svn path=/icecast/trunk/httpp/; revision=8346
2004-12-07 22:42:50 +00:00
Karl Heyes
d85ee1db3f
add extra boundary checks when splitting headers
...
svn path=/icecast/trunk/httpp/; revision=7507
2004-08-10 00:03:14 +00:00
Michael Smith
d5bc449998
Add Copyright notice to each source file, as requested by debian.
...
svn path=/trunk/httpp/; revision=5792
2004-01-29 01:02:12 +00:00
brendan
533772ff76
httpp goes through the rinse cycle
...
svn path=/trunk/httpp/; revision=5085
2003-07-07 01:49:27 +00:00
Karl Heyes
ec380c4565
ermmm, let's use the right operator.
...
svn path=/trunk/httpp/; revision=4963
2003-06-18 15:52:25 +00:00
Karl Heyes
5408558756
minor cleanup, removes compiler warning, makes it static, and doesn't
...
re-evaluate string length each time.
svn path=/trunk/httpp/; revision=4961
2003-06-18 11:13:11 +00:00
brendan
c8d79db03a
gcc 3.3 warns: dereferencing type-punned pointer will break strict-aliasing rules
...
svn path=/trunk/httpp/; revision=4906
2003-06-09 22:30:09 +00:00
brendan
ced88f98a8
Karl's patch for freebsd, minus the sys/select.h test which breaks on OS X.
...
Also enables IPV6 in libshout!
svn path=/trunk/httpp/; revision=4884
2003-06-05 17:09:12 +00:00
Michael Smith
d0cf9fe000
Brendan was getting pissed off about inconsistent indentation styles.
...
Convert all tabs to 4 spaces. All code must now use 4 space indents.
svn path=/trunk/avl/; revision=4492
2003-03-15 02:10:19 +00:00
Karl Heyes
a420bd0b4f
reduce include file namespace clutter for libshout and the associated
...
smaller libs.
svn path=/trunk/avl/; revision=4456
2003-03-09 22:56:46 +00:00
Karl Heyes
2116bd0d5e
include the automake config.h file if the application defines one
...
svn path=/trunk/avl/; revision=4450
2003-03-08 16:05:38 +00:00
Michael Smith
cd0f3c47e0
Set another parameter in the icy protocol parse that logging expects
...
svn path=/trunk/httpp/; revision=4446
2003-03-08 05:27:17 +00:00
Michael Smith
8dec7ae9d5
Added support for shoutcast login protocol (ewww...)
...
svn path=/trunk/httpp/; revision=4444
2003-03-08 04:57:02 +00:00
brendan
8dbdefbc10
Use gnu archive ACX_PTHREAD macro to figure out how to compile thread support.
...
Also make it possible to build libshout without threads, albeit without locking
in the resolver or avl trees.
New option --disable-pthread too.
svn path=/trunk/avl/; revision=4411
2003-03-06 01:55:20 +00:00
Michael Smith
38a1834bd6
Fix some warnings, fix cflags.
...
svn path=/trunk/httpp/; revision=4258
2003-01-17 09:01:04 +00:00
brendan
1a0cbc33a3
Indentation again, don't mind me
...
svn path=/trunk/httpp/; revision=4252
2003-01-16 05:48:31 +00:00
brendan
15836f4cb1
Make indentation consistent before doing other work
...
svn path=/trunk/httpp/; revision=4250
2003-01-15 23:46:56 +00:00
Michael Smith
7d17253c50
mp3 metadata complete. Still untested.
...
svn path=/trunk/httpp/; revision=4191
2002-12-31 06:28:39 +00:00
Michael Smith
cf0e4947ca
bugfixes for httpp_parse_response
...
svn path=/trunk/httpp/; revision=3834
2002-08-16 14:22:44 +00:00
Michael Smith
68db62a86f
Cleaned up version of Ciaran Anscomb's relaying patch.
...
svn path=/trunk/httpp/; revision=3760
2002-08-05 14:48:04 +00:00
Michael Smith
e1ae0d0ea2
Memory leaks. Lots of little ones.
...
svn path=/trunk/httpp/; revision=3275
2002-05-03 15:04:56 +00:00
Michael Smith
d4d6716a52
Buffer overflows.
...
Requires a change to the format plugin interface - jack: if you want this
done differently, feel free to change it (or ask me to).
svn path=/trunk/httpp/; revision=3219
2002-04-05 09:28:26 +00:00
Michael Smith
508795aa8b
Bunch of fixes:
...
- connections are now matched to format plugins based on content-type headers,
and are rejected if there isn't a format handler for that content-type, or
there is no content-type at all.
- format_vorbis now handles pages with granulepos of -1 in the headers
correctly (this happens if the headers are fairly large, because of
many comments, for example).
- various #include fixes.
- buffer overflow in httpp.c fixed.
svn path=/trunk/avl/; revision=3042
2002-02-11 09:11:18 +00:00
Jack Moffitt
42ce945f12
Thanks to Akos Maroy <darkeye@tyrell.hu> for this. These variables need to
...
be uppercase always in order to comply with the HTTP specification.
While not a problem internal to icecast, they were slipping into the log
files and breaking some less-than-robust parsers.
svn path=/trunk/httpp/; revision=2197
2001-10-20 07:40:09 +00:00
Jack Moffitt
5b7d386256
Win32 compatibility courtesy of Oddsock.
...
svn path=/trunk/httpp/; revision=2188
2001-10-20 04:41:54 +00:00
Jack Moffitt
a8824b7f95
Initial revision
...
svn path=/trunk/avl/; revision=1997
2001-09-10 02:24:39 +00:00