Sergey Lyubka
0cf82744ce
Unbreak macos tests
...
PUBLISHED_FROM=a9521579223cfbb68e2b7bcd221335d25dacbb87
2015-11-18 07:44:22 +00:00
Deomid Ryabkov
5cdf838325
Fix error handling in async resolver
...
PUBLISHED_FROM=1e8558ec08f8e72d70163d34e0920f80f74372d1
2015-11-18 07:44:22 +00:00
Sergey Lyubka
6418cad39f
Disable HTTP keep-alive on embedded
...
PUBLISHED_FROM=63bb1ca0f307a4332006d6cd13a35f0be6359174
2015-11-18 07:44:22 +00:00
Sergey Lyubka
46529fd51e
Remove unused MG_F_DONT_SEND
...
PUBLISHED_FROM=beaec58b808fb767b7e491d8b5d6b23a6d5e4e0c
2015-11-18 07:44:21 +00:00
Marko Mikulicic
c09ba40a48
Cleanup make format target
...
PUBLISHED_FROM=5f856af633ca9a10161769caac130fc6452f137f
2015-11-18 07:44:20 +00:00
Sergey Lyubka
47d52896a1
s/uri/url, to conform to nodejs HTTP API
...
PUBLISHED_FROM=32ba0c859ad9df3cf7dc3af8e379e49543e77843
2015-11-18 07:44:19 +00:00
Deomid Ryabkov
d60c99b01c
Make MG debug go to stderr
...
PUBLISHED_FROM=11618b6b2a50c62dd612d241c6b13a9aab357909
2015-11-18 07:44:19 +00:00
Sergey Lyubka
b8aeba06a2
Add unit test for mg_parse_date_string
...
PUBLISHED_FROM=aec7d5e6c6598fbc5141c40c9638cc96d288c8dc
2015-11-18 07:44:18 +00:00
Sergey Lyubka
8a0bc2d614
Mongoose binary - GUI version fix
...
PUBLISHED_FROM=94c2b4c5a40c3519df6caa7561c3935bdf505575
2015-11-18 07:44:18 +00:00
Deomid Ryabkov
e34747d1ad
Handle case of malloc failure in mbuf_resize
...
PUBLISHED_FROM=0cb98ac520b8aeb8bbeb2f23b8c65c62ab256021
2015-10-30 18:38:43 +01:00
Deomid Ryabkov
1a6bc7c514
Fix mbuf_resize(0)
...
PUBLISHED_FROM=7cab7543db990f7f67b53edca4f65ba45b219711
2015-10-30 18:38:42 +01:00
Deomid Ryabkov
ffa0ddfdbf
Make mg_call usable in protocol handlers
...
PUBLISHED_FROM=63ad74b31750a851db090d2f2995ecf5f275538b
2015-10-30 18:38:42 +01:00
Alexander Alashkin
ca55bff1cf
Fix mg compilation
...
PUBLISHED_FROM=ce7fdfebd3ebbf88688514be501b33ad1241743c
2015-10-30 18:38:42 +01:00
Deomid Ryabkov
cfee5c4fdb
Mongoose TCP listener for ESP LWIP
...
PUBLISHED_FROM=e88b17d21ee78a4c2c1c4832db322e19b314206d
2015-10-30 18:38:42 +01:00
Marko Mikulicic
e46185068b
Avoid inlining of esp gcc bug workaround
...
PUBLISHED_FROM=f02283b42d842246c75df848061a80b754a97013
2015-10-30 18:38:42 +01:00
Marko Mikulicic
6ef2fea45e
Workaround lx106 gcc bug stack frame size rounding
...
PUBLISHED_FROM=66906d0e5f6d97b135bd157f5f82dc13bef2fb1a
2015-10-30 18:38:41 +01:00
Deomid Ryabkov
e244dd84a9
Mongoose and LWIP fixes
...
PUBLISHED_FROM=c63992029098108ae62234176d4334207b43dd7b
2015-10-30 18:38:41 +01:00
Deomid Ryabkov
5034937a15
Set more reasonable WS buffer size
...
PUBLISHED_FROM=ecfc284747f1b3eef5c40dd74b4af19f4618edcc
2015-10-30 18:38:41 +01:00
Deomid Ryabkov
060045be65
Un-static a bunch of structs to save ram when idle
...
PUBLISHED_FROM=1a994be80dd46ffd410f88db28816c85b2c2bf79
2015-10-30 18:38:41 +01:00
Deomid Ryabkov
9adfe8d484
espconn is out, Mongoose + LWIP is in
...
PUBLISHED_FROM=c67ea324058d70070f89420c40e57b9df87964b1
2015-10-30 18:38:41 +01:00
Deomid Ryabkov
799cc369e0
Reduce stack usage when parsing HTTP URL
...
PUBLISHED_FROM=682f59e58d8335352cc09987a91e85cc264cf0f8
2015-10-30 18:38:41 +01:00
Deomid Ryabkov
b97d3fea4b
strnlen should return size_t
...
PUBLISHED_FROM=545c7d80380c48332803ef00981763b130a1c1c6
2015-10-30 18:38:40 +01:00
Deomid Ryabkov
2a4ca9d5c3
Introduce a network interface API, refactor UDP
...
PUBLISHED_FROM=6e961e2760b2b64e211978ede5df8ca353ea5512
2015-10-30 18:38:40 +01:00
Marko Mikulicic
cf279e7885
Address ignored return values of read and write
...
PUBLISHED_FROM=d76b6b9d91d7af0e916cd81e1213c463757bf924
2015-10-30 18:38:39 +01:00
Marko Mikulicic
cbf968735a
Fix MG_SEND_FUNC/MG_RECV_FUNC rename fail
...
PUBLISHED_FROM=da28a75111abb5fb49b122133a66ae9bdf63f474
2015-10-30 18:38:39 +01:00
Sergey Lyubka
57b35e6007
Add JS HTTP server to smartjs
...
PUBLISHED_FROM=13210e55d9434917549dcbf9a39a5377181f8387
2015-10-21 17:34:55 +02:00
Deomid Ryabkov
1eaabdd8e5
s/dmg/dns/g
...
PUBLISHED_FROM=96dc8b0b4001f2206749a401c615f043fc5f6131
2015-10-21 15:17:11 +02:00
Sergey Lyubka
dcd4e660a3
Serve current dir by default in mg_serve_http()
...
PUBLISHED_FROM=421b4256629b2bccd20ceb127ece02be57085b40
2015-10-21 15:17:11 +02:00
Deomid Ryabkov
96409e74e5
Fix ALL the leaks!
...
PUBLISHED_FROM=0adf7c6c903075d6705693829f8758f8ff67d579
2015-10-21 15:17:11 +02:00
Sergey Lyubka
e28ee097a1
Move mongoose binary to dev repo
...
PUBLISHED_FROM=224a216abc4a7cca50d80f762dca602f54470105
2015-10-21 15:17:11 +02:00
Deomid Ryabkov
2b4e544867
Move "connect done" logic from mg_read_from_socket
...
PUBLISHED_FROM=318cc110d8b012cf75cb02dfc68a8215faa93fe7
2015-10-21 15:17:11 +02:00
Deomid Ryabkov
ee042a3481
Fix SSI parsing
...
PUBLISHED_FROM=c918da948354def5815dfd6b832053f170212c6f
2015-10-16 12:57:02 +01:00
Maxim Ignatenko
4658194d08
Properly populate mg_connection.sa field
...
PUBLISHED_FROM=a305c720aee1b159847e10c962b6de7fe08bc787
2015-10-12 12:48:35 +01:00
Marko Mikulicic
b35657814c
Factor our LWIP enabling flag
...
PUBLISHED_FROM=d080ccb2d0daef1103ff7487b5c3f4b65ab97b99
2015-10-12 11:05:33 +01:00
Marko Mikulicic
b50c183c19
Simplify and abstract C func arg access
...
PUBLISHED_FROM=c174439a2d22794497dc35fd46ceb1f6c4e553a2
2015-10-12 11:05:32 +01:00
Maxim Ignatenko
a941687db0
Fix mongoose build
...
PUBLISHED_FROM=aec35861339d336697649fd2020766439b3814ad
2015-10-12 11:05:32 +01:00
Claudiu
3e6cbbde04
Fix static function prototype
...
PUBLISHED_FROM=d90d06593ec4531f479053243c72601ee27a3141
2015-10-05 22:27:10 +02:00
Sergey Lyubka
6400536282
Rename v7_get_global_object() -> v7_get_global()
...
PUBLISHED_FROM=91a306d5dbc55d65505904b1a19cca5bbe9f58cc
2015-10-05 22:27:10 +02:00
Maxim Ignatenko
93beff3b65
Use select() by default everywhere
...
PUBLISHED_FROM=474789b0d7f5076434e5c15c079306243f3a8d81
2015-09-25 16:19:50 +01:00
Marko Mikulicic
22f8d86b05
Makes sure send file releases resources on close
...
PUBLISHED_FROM=451d2dd0b55b9fd7dea441a9279f54d0005c97b1
2015-09-25 16:19:50 +01:00
Marko Mikulicic
3a9a9c7ad0
Enable printf format warnings for mg_printf
...
PUBLISHED_FROM=61a52651a2542cb89b155623781a5fcbf64779f3
2015-09-25 16:19:50 +01:00
Marko Mikulicic
56f661e9c6
Make mg send_http_file work for ESP8266 RTOS
...
PUBLISHED_FROM=10623cfe38e143f7e107a6494baa298c788586f0
2015-09-25 16:19:49 +01:00
Marko Mikulicic
5351f46efb
Mongoose send on esp8266 RTOS_SDK
...
PUBLISHED_FROM=1e97853ebc1c39b01754cf76d875453842e9b36d
2015-09-25 16:19:49 +01:00
Marko Mikulicic
0611627448
Serve a http file on quantex
...
PUBLISHED_FROM=856d2e0bdaddece638d215c252fabeb9ea2d7809
2015-09-22 10:32:02 +01:00
Sergey Lyubka
f014918435
Add JS support to Mongoose
...
PUBLISHED_FROM=5f319c5c6d965432da063ce7ab495ae24e972755
2015-09-22 10:32:01 +01:00
Sergey Lyubka
8a66ff5278
Mongoose rebrand changes
...
PUBLISHED_FROM=50497043e8d0c10487804263cdcb1cbb260d5a26
2015-09-21 15:19:35 +01:00
Sergey Lyubka
e1dd3f06fe
Rename Mongoose constants: NS_ -> MG_, NSF_ -> MG_F_
...
PUBLISHED_FROM=c9cc54df1883aa17606de2b1ffb30f0cd687d037
2015-09-21 15:19:34 +01:00
Deomid Ryabkov
32ab35f61f
Rename hmac_sha1 -> cs_hmac_sha1
...
PUBLISHED_FROM=3d4fbd8192d04add406e304b113ce5ec0b1c1165
2015-09-21 15:19:34 +01:00
Marko Mikulicic
8ab96ec74b
Implement binary and incremental clubby client
...
PUBLISHED_FROM=ba371b8a3d9dd8afcb771144beb8e5c344c7d6c7
2015-09-21 15:19:33 +01:00
Marko Mikulicic
17aa2a7092
Implement streaming base64 encoder
...
PUBLISHED_FROM=af3c6c0e8f9806c1bdc570c06cc6eea9995d6e3d
2015-09-21 15:19:33 +01:00
Alexander Alashkin
7d38d05ca7
Use updated sockets
...
PUBLISHED_FROM=30231da54720c709ce98cd0ab208cf9b06814eab
2015-09-21 15:19:33 +01:00
Marko Mikulicic
5234b73c29
Add simple core dumper for ESP
...
PUBLISHED_FROM=ec98516ce6aa1c841344adc7aae20b044b3d349b
2015-09-09 10:21:21 +01:00
Marko Mikulicic
8927c9d22b
Merge dev branch code named Fossa as next stable Mongoose
2015-09-08 14:34:30 +02:00
rojer
d349bb3cc7
Swallow responses to internal pings
2015-08-12 18:35:18 +01:00
Yuri Nesterov
990a1b9ae0
Fix VS2013 warnings
2015-07-12 15:43:54 +03:00
Marko Mikulicic
5183693951
Fix ssl close with polarssl
2015-07-02 16:26:31 +02:00
Sergey Lyubka
e47506f957
Fix unauthenticated body handling
2015-06-22 12:05:31 +01:00
Nicolas Cisco
d8028df29d
Quick fix in order not to loose the reference of connection_param pointer
2015-06-10 01:49:37 -03:00
Sergey Lyubka
30c0a3f201
Propagate select() and socketpair() errors to the user
2015-06-04 11:27:31 +01:00
Sergey Lyubka
14d6f71f82
Fix unit test
2015-05-20 10:50:32 +01:00
Sergey Lyubka
29454e2296
Merge pull request #524 from NickCis/array_variables
...
Implementing array varibles
2015-05-20 10:05:48 +01:00
NickCis
d6cbf9f77d
Fixing C coding style mistakes
2015-05-19 13:54:35 -03:00
Sergey Lyubka
b9fead4d6e
Merge pull request #525 from NickCis/mg_vprintf
...
Adding mg_vprintf and mg_vprintf_data.
2015-05-19 15:54:27 +01:00
Sergey Lyubka
c6a04e1719
Fix #523
2015-05-18 11:50:56 +01:00
NickCis
c839a61fea
Adding mg_vprintf and mg_vprintf_data in order to use va_list like functions
2015-05-15 16:20:33 -03:00
NickCis
c06abbc5f7
Implementing array varibles
2015-05-15 15:49:35 -03:00
Sergey Lyubka
c8e88e1710
Sync fossa struct definitions
2015-05-15 17:20:54 +01:00
Sergey Lyubka
bf7a115bf2
Fix url rewrites
2015-05-11 09:13:46 +01:00
Marko Mikulicic
1cd9715095
Fix default windows FD_SETSIZE, closes #506
...
https://support.microsoft.com/en-us/kb/111855 describes
that the user is expected to set the FD_SETSIZE macro
before including winsock2.h
2015-04-17 02:30:22 +02:00
Alexander Alashkin
09a80628e6
Fix mjpg_streamer example
2015-04-13 16:02:52 +03:00
Eugene Ossintsev
c00b236c8d
Fix spelling in docs/ReleaseNotes.md and in comments in mongoose.c
2015-04-09 00:15:40 -04:00
Eugene Ossintsev
eacd3f35e0
Inspect POST buffer in mg_get_var() only if first call of get_var() returns -1
...
In mg_get_var() the first call of get_var() inspects the variables of
the query string. If the requested variable is found but the destination
buffer is too small to hold the variable, return -2 right away. If it's
not found, make the second call of get_var() to inspect the POST buffer.
2015-04-05 23:40:50 -04:00
p_himanshu
7da8f273d2
Reverting (socket < 0) checks to avoid Windows build failure.
2015-04-02 16:47:07 -07:00
p_himanshu
b5b819b4a3
Adding a check to avoid undefined behavior if socket is out of the bounds of FD_SETSIZE.
2015-04-01 22:24:29 -07:00
Sergey Lyubka
821e2b3a75
Merge pull request #501 from xant/upstream
...
safety belt : scan_directory() can return without setting arr to a valid value
2015-04-01 20:22:20 +01:00
Sergey Lyubka
773efb0745
Respect WEBSOCKET_OPCODE_CONNECTION_CLOSE coming from client
2015-04-01 18:37:13 +01:00
Andrea Guzzo
ed1904a75d
safety belt : scan_directory() can return without setting arr to a valid value
2015-03-31 12:52:08 +02:00
Sergey Lyubka
a66663f0f6
Fix non-openssl build
2015-03-31 10:38:14 +01:00
Sergey Lyubka
36d95e230e
Fix win32 build
2015-03-25 17:10:58 +00:00
Sergey Lyubka
8a27a95a2a
Fix #460
2015-03-24 09:32:16 +00:00
Sergey Lyubka
2e63b5a5e5
Fix #441
2015-03-24 08:04:46 +00:00
Sergey Lyubka
ba5ae74144
Merge pull request #495 from mmicko/master
...
OS2 and Android NDK fixes
2015-03-22 17:03:28 +00:00
Miodrag Milanovic
f2b40e5fae
added comment for time_t change
2015-03-22 17:56:22 +01:00
Sergey Lyubka
8ed682930b
Fix #448
2015-03-21 13:17:24 +00:00
Miodrag Milanovic
86ad7922b0
OS2 and Android NDK fixes
...
Note that in Android NDK st_mtime is long unsigned int
2015-03-21 11:04:57 +01:00
Sergey Lyubka
f7476f53c7
Merge pull request #493 from RobertDiPaolo/bugfix/Visual_Studios_Build_Issues
...
Correctly handle _CRT_SECURE_NO_WARNINGS already being set in project se...
2015-03-20 16:29:11 +00:00
Sergey Lyubka
5d6f7ac8ef
Merge pull request #494 from RobertDiPaolo/bugfix/Memory_Leak
...
Fixed Memory Leak
2015-03-20 16:28:15 +00:00
Sergey Lyubka
f16fa5ed55
Merge pull request #492 from RobertDiPaolo/feature/Add_PATCH_Method
...
Added PATCH to list of valid HTTP Methods.
2015-03-20 16:28:11 +00:00
Sergey Lyubka
c0ba32f7a6
Set NS_DISABLE_THREADS ifndef MONGOOSE_ENABLE_THREADS
2015-03-20 15:33:02 +00:00
Sergey Lyubka
409c12a851
Better logic for port resolving
2015-03-18 17:25:46 +00:00
Robert Di Paolo
7cf28a5623
The 'char *ip' variable was being allocated and zeroed but not being used or freed.
2015-03-18 10:04:08 +00:00
Robert Di Paolo
6668c456ac
Correctly handle _CRT_SECURE_NO_WARNINGS already being set in project settings.
2015-03-18 09:56:01 +00:00
Robert Di Paolo
98f2476751
Added PATCH to list of valid HTTP Methods.
2015-03-18 09:48:17 +00:00
Sergey Lyubka
faeedb2930
Sync main
2015-03-18 09:37:52 +00:00
Sergey Lyubka
2d1d2e6534
SIZE_MAX is not defined on MSVC6, use (size_t) ~0
2015-03-17 17:00:59 +00:00
Sergey Lyubka
05c88a98fc
Introduce -dav_root option
2015-03-17 15:34:56 +00:00
Dinis Rosário
3bd79c7cd5
Fix remove_double_dots_and_double_slashes removing all the dots leading http server to serve wrong URI
...
If the uri is something like '/js/...jquery.js', remove_double_dots_and_double_slashes will remove the 3 dots and the http server will serves the /js/jquery.js file.
remove_double_dots_and_double_slashes should check if a dot or double dots is followed by a slash (or backslash) and only remove this to avoid disclosure attack.
2015-03-17 16:04:59 +01:00
Sergey Lyubka
c52e0744cb
Squashed warnings after size_t change
2015-03-17 13:18:15 +00:00
Miodrag Milanovic
af892c9726
compile fix for visual studio
2015-03-14 09:02:25 +01:00
Sergey Lyubka
057c2d4b42
Merge pull request #484 from davidmilligan/master
...
fix compiler warnings for 64 bit compilation
2015-03-10 18:40:16 +00:00
David Milligan
6c9b43bcf5
fix compiler warnings for 64 bit compilation
2015-03-09 20:01:09 -04:00
Sergey Lyubka
a91438acae
Fix #477
2015-03-09 16:09:05 +00:00
Sergey Lyubka
6cdb9f7ed3
Merge pull request #474 from mmicko/master
...
OS/2 patches by KO Myung-Hun
2015-03-04 17:18:16 +00:00
Sergey Lyubka
4502dd0c86
s/MONGOOSE_NO_THREADS/MONGOOSE_ENABLE_THREADS
2015-03-03 18:59:23 +00:00
Sergey Lyubka
95055f6048
Add winsock2.h include for win32
2015-03-03 18:32:14 +00:00
Sergey Lyubka
2c36532ec4
Merge pull request #465 from doug16rogers/vs9-compile-ipv6
...
Allow for compilation in Visual Studio with NS_ENABLE_IPV6.
2015-03-03 18:28:07 +00:00
Sergey Lyubka
f2b0b9c737
Fix Win32 build in mg_websocket_write()
2015-02-24 13:32:22 +00:00
Miodrag Milanovic
4f2205a667
OS/2 patches by KO Myung-Hun
...
Upstream patch from MAME project
2015-02-24 11:12:09 +01:00
Sergey Lyubka
6cec1d36a8
Merge pull request #463 from CurlyMoo/patch-1
...
Replace obsolete gethostbyname by getaddrinfo
2015-02-19 11:48:35 +00:00
CurlyMoo
4238370ae1
Check for getaddrinfo availability.
2015-02-19 12:09:34 +01:00
Miodrag Milanovic
7a0385dcac
Fix for MINGW builds
2015-02-17 11:08:23 +01:00
Sergey Lyubka
44a146faf6
SSL fixes
2015-02-16 18:34:07 +00:00
Sergey Lyubka
53a55da7bc
Add type cast in ns_out()
2015-02-16 18:19:15 +00:00
Sergey Lyubka
bf44277764
Define _XOPEN_SOURCE for MinGW build
2015-02-16 18:17:30 +00:00
Sergey Lyubka
a2e1da6e30
Add overflow checks
2015-02-12 19:12:58 +00:00
Thomas Klausner
eb72a63cca
Only define _XOPEN_SOURCE on Linux.
...
Fixes the build on NetBSD.
The comment says it's only needed on Linux, and AFAIK Linux
is the only operating system that only adds symbols when it's defined;
others, like NetBSD or Solaris, also hide symbols.
Signed-off-by: Thomas Klausner <wiz@NetBSD.org>
2015-01-29 15:02:26 +01:00
Doug Rogers
f19bbc73cc
Allow for compilation in Visual Studio 9 (2008) with NS_ENABLE_IPV6.
2015-01-29 00:12:35 -05:00
CurlyMoo
10ee430bfd
Add debug line and adapt to styling guide
...
Replaced tabs with spaces.
2015-01-27 22:55:13 +01:00
CurlyMoo
10d0bfdab4
Replace obsolete gethostbyname by getaddrinfo
...
This also protect against the latest glibc bug
2015-01-27 22:45:34 +01:00
Sergey Lyubka
e4ad3010be
Fix #416
2014-12-30 03:56:29 +00:00
Sergey Lyubka
b28662362d
Merge pull request #449 from ursine/patch-1
...
64-bit length fields on ARM don't work
2014-12-21 20:54:52 +00:00
Sebastian Godelet
478ca05e7a
mongoose.c: using application/javascript for .js
...
As of http://www.rfc-editor.org/rfc/rfc4329.txt , the preferred MIME type
for JavaScript is application/javascript.
2014-12-21 22:16:05 +08:00
Gary Coulbourne
8cad0a72f9
64-bit length fields on ARM don't work
...
ARM only allows aligned accesses. GCC generated unaligned accesses for the copy buffer, but ARM forces alignment, causing the first two bytes to be trampled. I changed the mechanism to create two temporaries and memcpy them in. It now works on ARM (and x86) for large websocket chunks.
2014-12-17 19:14:30 -05:00
Sergey Lyubka
7a5485493e
Added md5 copyright
2014-12-11 18:01:58 +00:00
Sergey Lyubka
45ff2c2c19
Removed $Date$ marker
2014-11-28 14:16:49 +00:00
Johan Wikman
ba9c74187b
Consistent use of NS_MALLOC, NS_FREE and NS_REALLOC
...
malloc(), free() and realloc() were used in a number of places.
Added NS_CALLOC as well.
2014-11-10 08:29:19 +02:00
Sergey Lyubka
e9d4847cbb
Merge pull request #432 from jhnwkmn/o_binary
...
O_BINARY might be defined.
2014-11-09 10:06:16 +00:00
Sergey Lyubka
ea76de07ee
Merge pull request #436 from jhnwkmn/no-cgi
...
MONGOOSE_NO_CGI needs special handling.
2014-11-09 10:04:54 +00:00
Sergey Lyubka
5a8c468ff7
Merge pull request #435 from jhnwkmn/size-macros
...
Added size macros.
2014-11-09 10:01:59 +00:00
Sergey Lyubka
5b143a6237
Merge pull request #434 from jhnwkmn/no-user
...
Added MONGOOSE_NO_USER configuration define.
2014-11-09 09:56:31 +00:00
Johan Wikman
300a27de99
If socket is about to be closed do not add to [read|write]_set.
...
If NSG_CLOSE_IMMEDIATELY is on, then the socket will be closed,
which means that (if the socket was added to either read_set or
write_set) the subsequent select will in turn be performed on a
socket that has been closed.
Standard socket implementations seem to ignore a descriptor
referring to a closed socket but LWIP
(http://savannah.nongnu.org/projects/lwip/ ) crashes. So better
not to add to the sets.
2014-11-07 15:48:23 +02:00
Johan Wikman
04a15a0c10
MONGOOSE_NO_CGI needs special handling.
...
MONGOOSE_NO_CGI is implied by both NS_DISABLE_SOCKETPAIR and
MONGOOSE_NO_FILESYSTEM. Thus, so as not to get complaints about
the same define being defined twice, some extra checks are needed.
2014-11-07 15:29:25 +02:00
Johan Wikman
f0f6ae05aa
Added size macros.
...
On very resource constraind devices you need to be able to
control the size of all buffers and structures placed on the
stack.
2014-11-07 14:31:44 +02:00
Johan Wikman
8a7d535d92
Added MONGOOSE_NO_USER configuration define.
...
Low-end systems, not running a proper OS, may not have the
concept of a user.
2014-11-07 14:01:13 +02:00
Sergey Lyubka
e7ac6024de
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-11-07 10:05:51 +00:00
Sergey Lyubka
9981b99ac8
Extra NULL check in iter2(). Fix #430
2014-11-07 10:05:42 +00:00
Johan Wikman
87a36c0c30
O_BINARY might be defined.
...
Some unix environments defines O_BINARY.
2014-11-07 12:02:11 +02:00
Johan Wikman
9786478a31
Conditionally include dirent.h and dlfcn.h
...
If you do not have a filesystem or do not support dav or
dynamic loading, the corresponding header files need not
be included (some environments might not have them).
2014-11-07 11:05:51 +02:00
Alexandro Sánchez Bach
e098a7292d
Added #define's for deprecated POSIX names
2014-10-30 23:07:48 +01:00
Sergey Lyubka
0322ec5647
Include query_string when proxying requests
2014-10-22 12:14:21 +01:00
Sergey Lyubka
a5223a9850
Squashed ARM warnings
2014-10-21 15:51:42 +01:00
Sergey Lyubka
cf53959f34
Fix broken push (type cast)
2014-10-17 20:03:15 +01:00
MPR
c05b51bbfc
make compile with g++ (fix invalid conversion from ‘void*’ to ‘ns_connection*’)
2014-10-16 23:57:14 +02:00
Sergey Lyubka
1ab704ac92
Fixed -DMONGOOSE_NO_DIRECTORY_LISTING build
2014-10-16 10:46:33 +01:00
Sergey Lyubka
a6598a1278
Added #define close(x) _close(x) for WIN32 to squash warning 4996 that VS2013 gives
2014-10-15 08:30:49 +01:00
Sergey Lyubka
0af5502b74
Removed redundant #defines for -D_WIN32 case
2014-10-15 08:28:17 +01:00
Sergey Lyubka
f059e41cac
Removed mg_set_listening_socket() and mg_get_listening_socket(), added mg_copy_listeners()
2014-10-14 15:25:56 +01:00
Sergey Lyubka
2cce91de9a
Refactored code for multiple listeners
2014-10-14 14:22:26 +01:00
Sergey Lyubka
0ff5b5b044
Added support for multiple listeners
2014-10-14 13:59:22 +01:00
Sergey Lyubka
0c5d9a98c2
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-10-14 11:10:47 +01:00
Sergey Lyubka
c9fbdfc1b5
mg_open() accepts 3rd param: mode
2014-10-14 11:10:42 +01:00
Sergey Lyubka
6193b5171c
Merge pull request #421 from mpromonet/master
...
transmit http answer code using http_client
2014-10-14 11:10:03 +01:00
Sergey Lyubka
2f3ddeccc5
Properly trim whitespaces from the hashbang CGI interpreter path
2014-10-13 15:57:34 +01:00
MPR
ca3f5a3257
follow Google style
2014-10-12 13:58:06 +02:00
MPR
df206bc05a
transmit http answer code using http_client
2014-10-11 17:56:35 +02:00
Sergey Lyubka
4ca4c862a5
Updated net_skeleton, added extra_headers param to mg_send_file()
2014-10-09 09:26:45 +01:00
Ake Hedman
53b784b143
connection_data -> user_data
2014-09-19 08:20:37 +02:00
Sergey Lyubka
8e91e3a305
Timeout only non-listening connections
2014-09-16 07:47:40 +01:00
Sergey Lyubka
ce953575e2
Not closing listening connections
2014-09-15 13:48:55 +01:00
Sergey Lyubka
382d165574
Added MONGOOSE_NO_MMAP conditional
2014-09-15 01:18:38 +01:00
Sergey Lyubka
8752910330
Better UDP support
2014-09-11 15:52:42 +01:00
Sergey Lyubka
6083b9c5c5
Updated to the recent skeleton. SSL address format changed
2014-09-09 18:07:55 +01:00
m.milanovic@levi9.com
7806609773
Added mg_mmap and mg_munmap utility functions for memory mapping files
2014-09-04 15:05:42 +02:00
m.milanovic@levi9.com
5e3e6a6dce
Fixed compile on MINGW so it is confirmed working on versions 4.6.x till 4.9.x
2014-09-02 12:11:21 +02:00
Sergey Lyubka
3cc0d16f65
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-09-01 20:55:37 +01:00
Sergey Lyubka
b50095fa61
Added $Date$ markers
2014-09-01 20:54:12 +01:00
Massimo Callegari
347a249d10
Fixed build warning of signed/unsigned conditional expression
2014-08-30 13:04:11 +02:00
Sergey Lyubka
07d982129a
Passing NS events together with the NC pointer
2014-08-29 23:28:34 +01:00
Sergey Lyubka
c941a1a39a
Proper struct mg_connection cleanup in close_local_endpoint()
2014-08-22 16:26:30 +01:00
Sergey Lyubka
bee22312bc
removed dead code
2014-08-21 04:13:33 +01:00
Sergey Lyubka
bdb16c624c
Added MG_RECV event and mg_send_file_data() func
2014-08-21 04:09:06 +01:00
Sergey Lyubka
e389e70d05
squashed warn in mg_terminate_ssl()
2014-08-20 21:54:09 +01:00
Miodrag Milanovic
3721efe1e9
Make mongoose compile on mingw environment
2014-08-11 15:27:23 +02:00
Sergey Lyubka
e0822ffb78
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-08-08 14:25:58 +01:00
Sergey Lyubka
ae7d5a8f94
Bumping up default timeout from 30 to 300 sec
2014-08-08 14:25:44 +01:00
Davide Viti
5ed6708468
Avoid unconditional definition of _LARGEFILE_SOURCE
...
On some build systems (i.e. Buildroot), _LARGEFILE_SOURCE is defined
at "higher level" as default CFLAG definition.
This fix avoids the following compilation warning:
mongoose-5.4/mongoose.c:52:0: warning: "_LARGEFILE_SOURCE" redefined [enabled by default]
#define _LARGEFILE_SOURCE // Enable fseeko() and ftello() functions
^
<command-line>:0:0: note: this is the location of the previous definition
2014-08-07 22:08:12 +02:00
Sergey Lyubka
b67b618811
Added guard for MONGOOSE_NO_FILESYSTEM
2014-08-04 22:32:24 +01:00
Sergey Lyubka
860addf1e3
MONGOOSE_NO_SOCKETPAIR -> NS_DISABLE_SOCKETPAIR
2014-08-03 18:56:19 +01:00
Sergey Lyubka
03d571a119
Merge pull request #407 from kuiash/master
...
Populate HTTP warning codes
2014-08-03 18:29:15 +01:00
Sergey Lyubka
0d9ecffc53
Do not dealloc conn->request in mg_forward()
2014-08-03 12:41:15 +01:00
Sergey Lyubka
bd40145301
moved hex dumping to skeleton
2014-08-01 17:35:59 +01:00
Sergey Lyubka
e9c434a6a1
updated net skeleton
2014-08-01 09:05:50 +01:00
Sergey Lyubka
facf2af66e
Clearing off HTTP headers in close_local_endpoint()
2014-07-31 20:05:25 +01:00
Sergey Lyubka
cc54195f59
Added mg_forward()
2014-07-31 20:04:59 +01:00
Sergey Lyubka
e2fb707d9f
Added SSL_CTX_set_mode()
2014-07-30 11:27:37 +01:00
kuiash
7dfff935d6
Populate HTTP warning codes
...
Includes changing 201 "Server Error" to "Internal Server Error"
List mostly borrowed from here http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
418 and 451 also added
Local testing showed a problem with 202 reported as "Server Error" instead of "Accepted"
2014-07-29 12:48:22 +01:00
Sergey Lyubka
b0355d45ae
Merge pull request #403 from pavel-pimenov/fix-cache-call-stat
...
stat - function result cache
2014-07-27 11:13:26 +01:00
Pavel Pimenov
01a058d29b
Remove file_stat_t st_cgi;
2014-07-27 13:10:49 +04:00
Pavel Pimenov
e6eca1738f
80 characters limit + remove tabs
2014-07-27 12:53:37 +04:00
Pavel Pimenov
2108ec5a0c
Fix style for pointer
2014-07-27 12:44:08 +04:00
David M.
bc4e47630a
Set the correct json content-type
...
Chance text/json to application/json to comply with the RFC.
See http://www.ietf.org/rfc/rfc4627.txt for more information.
2014-07-26 20:55:59 -04:00
Pavel Pimenov
f41c9a2a1f
stat - function result cache
2014-07-23 11:26:20 +04:00
Sergey Lyubka
386d2e5cd4
fix leak in handle_propfind()
2014-07-18 13:00:43 +01:00
Sergey Lyubka
b738fdbffa
updated net skeleton
2014-07-08 11:28:03 +01:00
Pavel Pimenov
82872e86fd
Change printf mask %zu -> %lu
...
for MS VC++ compatibility http://stackoverflow.com/questions/15610053/correct-printf-format-specifier-for-size-t-zu-or-iu
2014-07-07 09:24:48 +04:00
Alex Skalozub
a6bf2bcbf4
Should also disallow PROPFIND as well
2014-06-29 00:03:52 +04:00
Alex Skalozub
b0cf8304cb
Disallow WebDAV MKCOL/PUT/DELETE requests to protected files (like .htpasswd)
2014-06-28 23:14:21 +04:00
Sergey Lyubka
0d9fe39dbb
ns_read_from_socket(): calling recv() in a loop until failure
2014-06-25 11:43:07 +01:00
Sergey Lyubka
d6c388042c
QNX SSL upload fix
2014-06-23 13:52:07 +01:00
Sergey Lyubka
6f66d794e8
Refactor NS_POLL case in mg_ev_handler
2014-06-20 11:41:13 +01:00
Sergey Lyubka
a639e10a4d
squash QNX warning about execle() call
2014-06-17 13:28:45 +01:00
Sergey Lyubka
48750e67f6
ENABLE_PROXY is visible with MONGOOSE_NO_FILESYSTEM
2014-06-17 10:50:47 +01:00
Sergey Lyubka
ce60379af6
sending 405 for proxy request if connect is not allowed
2014-06-16 11:27:17 +01:00
Sergey Lyubka
e0b9e4abfd
Added enable_proxy
2014-06-16 11:06:57 +01:00
Sergey Lyubka
665f205527
squash warning under mingw
2014-06-16 10:46:50 +01:00
Sergey Lyubka
030daaf5d5
squash warning under mingw
2014-06-16 10:44:56 +01:00
Sergey Lyubka
760511ec49
squashed warning around NS_STACK_SIZE
2014-06-16 10:21:31 +01:00
Sergey Lyubka
203688a34b
Added comment for Win32 SO_RESUSEADDR
2014-06-13 10:19:46 +01:00
Sergey Lyubka
29f4703e4f
Adding zero-length chunk for long-running requests
2014-06-13 07:57:27 +01:00
Sergey Lyubka
3cec6f6745
keeping alive long-lived connections
2014-06-12 10:58:49 +01:00
Sergey Lyubka
abcea07641
Fix #373
2014-06-11 20:37:35 +01:00
Sergey Lyubka
6a54704b29
mg_set_option(): always set correct actual listening port
2014-06-11 20:12:23 +01:00
Sergey Lyubka
8a2fbac4c0
Calling event handler in MITM mode before making connection to the target host
2014-06-11 09:56:34 +01:00
Sergey Lyubka
96ce6bac69
ns_server_poll(): setting current_time to now after select()
2014-06-11 09:44:18 +01:00
Sergey Lyubka
44416902d6
Changed debug in do_proxy()
2014-06-10 12:22:30 +01:00
Sergey Lyubka
25e646c1a1
Squashed warnings for MONGOOSE_NO_FILESYSTEM
2014-06-10 10:26:58 +01:00
Sergey Lyubka
870ca615de
Added mg_next()
2014-06-09 17:24:51 +01:00
Sergey Lyubka
64b51699f8
Added MG_WS_CONNECT
2014-06-09 16:32:56 +01:00
Sergey Lyubka
50a889dac0
Inlined parse_url()
2014-06-04 12:32:47 +01:00
Sergey Lyubka
f51ca8d5d1
Added mg_send_file(). Changed sending function to return send_iobuf length.
2014-06-03 18:02:55 +01:00
Sergey Lyubka
7b37e0cb8b
Added simplistic flow control in transfer_file_data()
2014-06-03 17:00:52 +01:00
Sergey Lyubka
c7925353e7
Added parens around expression to squash warning under QNX SDP 6.6.0
2014-06-03 14:25:54 +01:00
Daniel O'Connell
25115a694c
proxy support changes
2014-05-29 17:04:13 +01:00
Sergey Lyubka
2436f9d6c3
squashed win32 warnings
2014-05-22 07:31:19 +01:00
Sergey Lyubka
2238951c18
Integrated Dans net skeleton changes
2014-05-21 16:18:21 +01:00
Daniel O'Connell
f266dd2c94
Removed noisy debug messages
2014-05-20 16:40:47 +01:00
Daniel O'Connell
b03358cb03
Fixes for the proxy code
2014-05-19 19:08:02 +01:00
Sergey Lyubka
1bede7e28b
Added test for parse_url()
2014-05-19 12:56:07 +01:00
Daniel O'Connell
3235c05fd6
Added proxy functionality
2014-05-18 13:22:33 +01:00
Daniel O'Connell
d0e66de225
Re-added ssl_ca_certificate option
2014-05-13 12:30:30 +01:00
Daniel O'Connell
f537670ce2
Synced net skeleton
2014-05-13 12:28:39 +01:00
Sergey Lyubka
804da054b5
Removed extra line in the comment
2014-05-12 23:24:03 +01:00
Sergey Lyubka
fb4e701545
Added mg_wakeup_server_ex() for pushing data
2014-05-12 23:22:57 +01:00
Sergey Lyubka
24a7936907
Squashed warning for non-ssl case in ns_set_ssl_ca_cert()
2014-05-11 16:05:07 +01:00
Sergey Lyubka
0993994139
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-05-11 13:43:10 +01:00
Sergey Lyubka
8b740536de
Added ssl_ca_certificate option
2014-05-11 13:42:59 +01:00
cry-inc
a39861b7bf
Fixed wrong behavior of mg_set_option() with option "listening_port" caused by SO_REUSEADDR when using Windows
2014-05-07 16:38:23 +02:00
cry-inc
704f057384
Fixed wrong MIME type for .rar files
2014-04-30 10:30:35 +02:00
Sergey Lyubka
1bb98e5e8e
Exported mg_websocket_printf(), mg_url_encode(). Added unit test for mg_url_encode()
2014-04-25 18:04:24 +01:00
Sergey Lyubka
a7774d0f1a
Added mg_websocket_printf(). added MONGOOSE_SEND_NS_EVENTS
2014-04-24 14:09:54 +01:00
Sergey Lyubka
f52c756fbb
Calling SSL_free() in ns_close_conn()
2014-04-16 16:45:31 +01:00
Sergey Lyubka
606eab7f4f
Passing PUT content to the event handler
2014-04-14 16:14:13 +01:00
Sergey Lyubka
c5287b9044
iobuf_append() refactored: allocating exactly as many bytes as needed
2014-04-09 23:52:16 +01:00
Sergey Lyubka
464b895116
Added enum for websocket opcodes
2014-04-09 15:16:03 +01:00
Sergey Lyubka
05d7b7c8bc
Added MG_WS_HANDSHAKE
2014-04-09 11:55:36 +01:00
Sergey Lyubka
d8b4db37a0
Squashed warnings
2014-04-09 11:37:08 +01:00
Sergey Lyubka
6bb49c780c
Updated net skeleton code
2014-04-09 11:32:23 +01:00
Sergey Lyubka
a8b38e4ab9
mg_set_option() sets NULL if value is empty
2014-03-31 15:02:20 +01:00
Sergey Lyubka
8750f8af1f
Added cast in try_parse()
2014-03-31 09:51:47 +01:00
Sergey Lyubka
5680b0fcc5
Removed redundant cast in try_parse()
2014-03-31 09:34:31 +01:00
Sergey Lyubka
33c56b0edc
Init local_ip and local_port properly in mg_connection
2014-03-30 22:50:10 +01:00
Sergey Lyubka
8be30350be
mg_set_option(): allow NULL as value. Fast success if old_value == new_value.
2014-03-30 15:59:39 +01:00
Sergey Lyubka
2609a2ab72
Fixed comment for mg_template()
2014-03-30 12:47:27 +01:00
Sergey Lyubka
5a04ab2c56
Added mg_template() function
2014-03-30 12:45:48 +01:00
Sergey Lyubka
4739de6c28
Removed DLL interface and Lua conditional
2014-03-30 12:34:32 +01:00
Sergey Lyubka
639d7a2fd8
Fixing MinGW compilation: pid_t -> process_id_t
2014-03-28 09:18:38 +00:00
Sergey Lyubka
8115ce1d82
Handling SSL_write() error
2014-03-27 11:18:20 +00:00
Sergey Lyubka
3558b587b7
Fixed linking problem for -DMONGOOSE_NO_FILESYSTEM
2014-03-27 10:13:34 +00:00
Sergey Lyubka
e21ec58ea8
dav fixes: using auth if auth file is set
2014-03-26 23:13:14 +00:00
Sergey Lyubka
d369f31608
return 404 for non-existent propfind URIs
2014-03-26 16:34:55 +00:00
Sergey Lyubka
cfdd430b98
Added hexdump_file option
2014-03-26 12:20:02 +00:00
Sergey Lyubka
a6c05a9e83
changed handle_propfind() to report only dir entry when listing dir
2014-03-24 20:39:32 +00:00
Sergey Lyubka
94f63787bb
Restored void * parameter for iterate_over_connections()
2014-03-24 16:01:45 +00:00
Sergey Lyubka
0d00cd51e6
Fix #356
2014-03-23 19:59:03 +00:00
Sergey Lyubka
b216210a13
Moving lua server side to server.c
2014-03-23 15:33:39 +00:00
Sergey Lyubka
4d6bedfd4e
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-03-20 15:01:18 +00:00
Sergey Lyubka
ace8c1736c
Added mg_load_dll()
2014-03-20 15:01:05 +00:00
Sergey Lyubka
781a1dc25e
Merge pull request #352 from ranzhengyuan/some-idea
...
I think that when the socket invalid, the return value should be -1.
2014-03-20 10:34:18 +00:00
冉正源
3ea3b8dfa4
I think that the socket is invalid, the return should be -1.
2014-03-19 22:32:41 +08:00
Solomon Huang
19aefcb7dd
Remove MONGOOSE_NO_DAV on DAV_AUTH_FILE options
...
Building with -DMONGOOSE_NO_DAV will fail.
2014-03-19 01:53:02 +08:00
Sergey Lyubka
91c9ab807b
Forwarding POST data to the CGI process
2014-03-12 22:43:04 +00:00
Sergey Lyubka
9231c7346c
match_prefix -> mg_match_prefix
2014-03-12 18:35:36 +00:00
Sergey Lyubka
a7a17711ec
Resetting endpoint_type in open_local_endpoint()
2014-03-10 08:35:41 +00:00
Sergey Lyubka
18e28ef879
Added lua includes
2014-03-09 20:22:51 +00:00
Jurie Horneman
1b3a1b74ac
Exposed Lua support functions.
2014-03-09 21:11:06 +01:00
Sergey Lyubka
8dd76e6ef4
Using ns_start_thread()
2014-03-09 19:50:34 +00:00
Sergey Lyubka
976b5f37c1
Added Lua callback
2014-03-09 19:30:41 +00:00
Sergey Lyubka
31489ab7b1
Lua fixes
2014-03-09 19:26:58 +00:00
Sergey Lyubka
1eb59940a4
Re-init rewrites var in convert_uri_to_file_name()
2014-03-09 13:27:39 +00:00
Sergey Lyubka
afaba7ee17
Lua calls, birth_time fixed
2014-03-09 13:13:13 +00:00
Sergey Lyubka
ab147e8f19
Added MONGOOSE_NO_SSI to MONGOOSE_NO_FILESYSTEM
2014-03-06 13:37:23 +00:00
Sergey Lyubka
81a78f9c8b
Added query string to access log
2014-03-05 11:22:23 +00:00
Sergey Lyubka
69bd5f7aa2
SSL_accept logic fix
2014-03-05 02:19:05 +00:00
Sergey Lyubka
41b3c1b23e
warning squashed in convert_uri_to_file_name()
2014-03-05 01:59:58 +00:00
Sergey Lyubka
f639409533
warning squashed in convert_uri_to_file_name()
2014-03-05 01:59:32 +00:00
Sergey Lyubka
67c44799c8
SSL_accept() error handling fix
2014-03-05 01:57:09 +00:00
Sergey Lyubka
b77532ea3f
Added mjpg example
2014-03-04 20:22:46 +00:00
Sergey Lyubka
ed8168e8a1
Added virtual hosts support via url_rewrites
2014-03-04 16:15:02 +00:00
Sergey Lyubka
39e2d2ad55
Appending query_string to the URI when redirecting on HTTP error
2014-03-04 15:01:05 +00:00
Sergey Lyubka
27c6656398
SSL_accept fixes
2014-03-04 13:23:40 +00:00
Sergey Lyubka
ffe83051fe
build fixed
2014-03-04 13:15:56 +00:00
Sergey Lyubka
f521999ea6
Calling EP_CLIENT on close
2014-03-03 10:27:56 +00:00
Sergey Lyubka
e41df3cf9c
MG_REQ_BEGIN -> MG_REQUEST, killed MG_REQ_END, add MG_REPLY. Restored server test
2014-03-03 10:26:27 +00:00
Sergey Lyubka
65f484291f
got rid of multiline comment
2014-03-03 09:45:00 +00:00
Sergey Lyubka
77db89961b
mg_stat() fix for paths like X:\
2014-03-03 01:00:38 +00:00
Sergey Lyubka
ad50310bb6
Added index.shtml to index files
2014-03-02 19:49:15 +00:00
Sergey Lyubka
66ec3d1f1e
Added defines for popen and pclose, for SSI under Win32
2014-03-02 18:50:02 +00:00
Sergey Lyubka
5f25a88821
Restored SSI functionality
2014-03-02 18:27:51 +00:00
Sergey Lyubka
fd7dc33645
unbroke unit test
2014-03-02 17:20:24 +00:00
Sergey Lyubka
458320cffb
Fixed #343 in conn2() for Lua
2014-03-02 10:12:12 +00:00
Sergey Lyubka
e0214af422
Using private ns_avprintf() in mg_printf_data()
2014-03-02 10:07:30 +00:00
Sergey Lyubka
df5e997ea7
ns_server_poll() waking up by ns_server_wakeup()
2014-03-01 01:55:40 +00:00
Sergey Lyubka
0a3cb63c73
Added mg_wakeup_server()
2014-03-01 01:47:01 +00:00
Sergey Lyubka
37f7f3fb12
Merge pull request #339 from nenioscio/master
...
Fix issue #338
2014-03-01 01:19:31 +00:00
Sergey Lyubka
2ac970fa16
Moving to event-based API, temporary breaking tests
2014-03-01 01:17:39 +00:00
Klaus Wagner
dbbda02f70
Fix issue #338
2014-02-27 22:12:46 +01:00
Sergey Lyubka
951d20f904
Added coniditional to use net_skeleton separately
2014-02-25 18:52:23 +00:00
Sergey Lyubka
85a6abd58b
Clearing flags in close_local_endpoint()
2014-02-25 12:02:45 +00:00
Sergey Lyubka
107902bae4
add_to_set(): fix around non-negative SOCKET on Windows
2014-02-24 08:22:40 +00:00
Sergey Lyubka
9bbf4c8384
Fixed problem with mg_printf_data()
2014-02-22 16:11:47 +00:00
Sergey Lyubka
c39a712540
Win32 build fix
2014-02-21 14:13:06 +00:00
Sergey Lyubka
e9f6111ba1
re-added signal.h
2014-02-20 17:47:07 +00:00
Sergey Lyubka
ba267a32fd
squashed warning in read_from_socket
2014-02-20 17:44:47 +00:00
Sergey Lyubka
f64ebbe0b1
Guarded on_cgi_data() call by ifdef, thanks to Pavel Pimenov
2014-02-20 12:33:46 +00:00
Sergey Lyubka
ce57f47de0
Added missing signal.h
2014-02-20 09:49:42 +00:00
Sergey Lyubka
48be2dbc2a
Added conditional for handling idle websocket conns
2014-02-20 07:32:33 +00:00
Sergey Lyubka
8905522a94
Setting last_io_time in ns_add_sock()
2014-02-20 06:26:44 +00:00
Sergey Lyubka
eea1680cf9
open_cgi_endpoint() strrchr fix
2014-02-19 16:44:01 +00:00
Sergey Lyubka
d5004cb7eb
PF_INET -> AF_INET, unbreaks FreeBSD
2014-02-19 16:39:30 +00:00
Sergey Lyubka
1d1a05bf39
Embedded net_skeleton
2014-02-19 16:38:53 +00:00
Sergey Lyubka
8f7703c2a9
moved to net_skeleton
2014-02-19 16:34:51 +00:00
Sergey Lyubka
998425b14b
Styling changes for hexdump
2014-02-10 10:21:57 +00:00
Pavel Pimenov
9e4cd054c8
Fix copy-paste for MONGOOSE_HEXDUMP feature
2014-02-10 12:00:51 +04:00
Sergey Lyubka
5dc317fcb0
Added -DMONGOOSE_HEXDUMP feature
2014-02-09 20:57:11 +00:00
Pavel Pimenov
f9a99530ff
Add #ifndef MONGOOSE_NO_FILESYSTEM
2014-02-07 11:02:12 +04:00
Andrea Guzzo
b22f7d3a49
added a new handler callback to be used when the http connection is being closed
...
so that in case of connections closed prematurely, the user can clear resources
eventually bound to the connection using the 'connection_param' member of the
mg_connection structure
2014-02-06 11:22:13 +01:00
Sergey Lyubka
eaa0e26a85
Starting to rebuild chat example on Lua
2014-02-06 10:18:30 +00:00
Sergey Lyubka
a3a63f7e56
Using mg_connection::callback_param for mg_iterate_over_connection()
2014-02-06 10:00:20 +00:00
Sergey Lyubka
c9036f3ac0
Added workaround for non-compliant runtimes in alloc_vprintf()
2014-02-05 12:33:36 +00:00
Sergey Lyubka
60858d7fe5
NO_WEBSOCKET -> MONGOOSE_NO_WEBSOCKET
2014-02-04 19:57:00 +00:00
Sergey Lyubka
0f1a59aeb4
Increased env buf size 4096 -> 8192. Passing TMPDIR to CGI.
2014-02-04 18:11:56 +00:00
Sergey Lyubka
a34d1ec00a
Better handling of MONGOOSE_NO_SOCKETPAIR
2014-02-04 14:04:54 +00:00
Sergey Lyubka
e70d98b7b0
Added fixes for eCos
2014-02-04 09:59:53 +00:00
Sergey Lyubka
bea012a3c1
Removed redundant addenv call
2014-02-04 08:06:49 +00:00
Sergey Lyubka
eb2d470f65
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-02-03 17:54:46 +00:00
Sergey Lyubka
652c352394
Passing SERVER_NAME, TMP and TEMP env vars to CGI.
2014-02-03 17:54:31 +00:00
xant
9e118c8a31
bugfix: set the correct status if we still have pending data
2014-01-31 19:09:12 +01:00
Sergey Lyubka
45861c7890
Disabling options if functionality is not enabled
2014-01-30 14:54:02 +00:00
Sergey Lyubka
1957879e10
Casting to int in mg_sprintf() call in handle_cgi
2014-01-29 12:34:51 +00:00
Sergey Lyubka
ddbe690698
CGI directory logic fixed
2014-01-29 11:42:14 +00:00
Sergey Lyubka
9ba1596c46
Closing connection after mg_send_digest_auth()
2014-01-29 01:24:21 +00:00
Sergey Lyubka
de509ae952
Fix around pid_t for mingw, thanks to Jay
2014-01-28 20:09:12 +00:00
Sergey Lyubka
77817cd019
Squashed the warnings
2014-01-28 13:42:26 +00:00
Sergey Lyubka
7083bea56b
mg_parse_header(): allowing no spaces for comma-separated list
2014-01-28 13:01:28 +00:00
Sergey Lyubka
3dffd7604a
Removed warnings
2014-01-28 12:55:20 +00:00
Sergey Lyubka
14526a2109
mg_add_uri_handler -> mg_set_request_handler()
2014-01-28 12:42:13 +00:00
Sergey Lyubka
0d28f99275
wrapped pid_t and S_ISDIR definitions into ifndef for mingw build
2014-01-27 11:12:43 +00:00
Sergey Lyubka
a281e99661
calling auth handler wrapped in MONGOOSE_NO_AUTH
2014-01-27 11:10:46 +00:00
Sergey Lyubka
3fa5c69f98
Fixed handle_delete() stat call
2014-01-27 11:06:05 +00:00
Sergey Lyubka
e31f3058fa
Added test for rewrites
2014-01-27 11:03:44 +00:00
Sergey Lyubka
8ae0400b0d
Added ability to set "0" as listening port. Exported local_ip and local_port to the client.
2014-01-25 13:50:57 +00:00
Sergey Lyubka
037fdbcccb
Ignoring chdir() return value. Resetting mg_conn in close_local_endpoint()
2014-01-25 09:45:47 +00:00
Sergey Lyubka
5d2ac4e0a6
Merge branch 'master' of ssh://github.com/valenok/mongoose
2014-01-24 20:50:21 +00:00
Sergey Lyubka
f977757a9d
Added mg_set_auth_handler()
2014-01-24 20:49:57 +00:00
Andrea Guzzo
956788d7de
changed mg_get_mime_type to expect the default type as argument
...
instead of using a configuration option
2014-01-24 15:56:21 +01:00
Andrea Guzzo
45f6612096
allow to define a default mime-type to use when lookup in the internal table fails
...
instead of always returning 'text/plain'
To allow setting a different default mime-type the mg_get_mime_type() api has been
extended to require an mg_server parameter.
Note that using a static global as default mime type wouldn't have allowed us to
control it via a configuration option because there is not global initialization phase
and configuration options are provided (and specific) to each server instance.
This means that different servers can be configured to use a different default mime-type
(which is also a desired behaviour in many scenarios) when lookup fails.
2014-01-24 14:45:19 +01:00
Sergey Lyubka
2392156fd4
Not exiting on a wrong option, best effort to recover
2014-01-23 20:57:27 +00:00
Sergey Lyubka
93c5335d80
USE_POST_SIZE_LIMIT -> MONGOOSE_USE_POST_SIZE_LIMIT, and unit test added
2014-01-23 11:24:00 +00:00
Sergey Lyubka
ad89868564
Moved must_hide_file to under #ifndef MONGOOSE_NO_FILESYSTEM
2014-01-22 18:24:28 +00:00
Sergey Lyubka
976f286134
Made mg_connection::content_len int -> size_t, which is 64-bit on 64-bit systems
2014-01-20 20:57:21 +00:00
Sergey Lyubka
503a1a749d
Added unit test for MONGOOSE_USE_SSL
2014-01-20 20:50:30 +00:00
Sergey Lyubka
67b7d79710
Removed comment about MONGOOSE_USE_STACK_SIZE
2014-01-20 11:10:30 +00:00
Sergey Lyubka
2e35e25935
ENABLE_DBG -> MONGOOSE_ENABLE_DEBUG, USE_STACK_SIZE -> MONGOOSE_USE_STACK_SIZE
2014-01-20 11:04:12 +00:00
Sergey Lyubka
d86d409d3c
Preprocessor definitions prefixed by MONGOOSE_
2014-01-20 10:54:15 +00:00
Sergey Lyubka
1109d3aa3c
Guarded #define EINPROGRESS
2014-01-20 09:02:57 +00:00
Sergey Lyubka
8208d9e250
Fixed -DUSE_SSL build
2014-01-20 09:01:16 +00:00
Sergey Lyubka
fdd086b11c
moved discard_leading_iobuf_bytes() out from conditional
2014-01-20 08:55:34 +00:00
Sergey Lyubka
5825e3ea74
Adding use_ssl to mg_connect()
2014-01-20 08:55:03 +00:00
Sergey Lyubka
7a129c17ba
Added http client with unit tests
2014-01-19 16:32:43 +00:00
Sergey Lyubka
400084ea8a
read_from_client -> read_from_socket
2014-01-17 16:58:19 +00:00
Sergey Lyubka
82ad9a073a
Calling long running connections regardless of select() status
2014-01-17 16:37:35 +00:00
Sergey Lyubka
40e5c744da
Calling long-running URI handlers on each poll iteration
2014-01-17 15:49:16 +00:00
Sergey Lyubka
e648681f1d
Moved mg_connect()
2014-01-17 15:42:35 +00:00
Sergey Lyubka
02f19fc05a
Using mg_handler_t for iterate_over_connections()
2014-01-17 11:45:57 +00:00
Sergey Lyubka
7690f9e34b
Fixed websocket example, and websocket callback calling logic.
2014-01-17 10:17:15 +00:00
Sergey Lyubka
7b6e8fb93c
Moved idle_timeout_ms into compile-time option
2014-01-16 13:23:23 +00:00
Sergey Lyubka
89ef8f2f30
Removed method checks for CGI
2014-01-15 11:46:05 +00:00
Sergey Lyubka
9115a99f47
Fixed scanf format in parse_port_string()
2014-01-15 11:06:37 +00:00
Sergey Lyubka
bac0f75dd6
int sock -> sock_t sock
2014-01-15 07:10:09 +00:00
Sergey Lyubka
6440c358c1
C++ friendliness fix
2014-01-14 23:20:23 +00:00
Sergey Lyubka
0adbfcba96
Moved send_options out of NO_DAV conditional
2014-01-14 19:28:29 +00:00
Sergey Lyubka
136c3e8200
Eat prior POST data in close_local_endpoint()
2014-01-14 13:57:55 +00:00
Sergey Lyubka
fc37b08139
URI handler status code drives streaming behavior
2014-01-14 13:16:58 +00:00
Sergey Lyubka
346179d1f1
keep-alive for all EP_USER requests
2014-01-14 00:44:27 +00:00
Sergey Lyubka
0148bc804a
Added NO_THREADS wrapper
2014-01-13 21:35:45 +00:00
Sergey Lyubka
472e198d4a
Fixed mg_parse_header to allow NULL strings
2014-01-13 21:31:18 +00:00
Sergey Lyubka
cc636197bc
Added auth example
2014-01-13 17:58:14 +00:00
Sergey Lyubka
73ed83c5e3
Added mg_parse_multipart
2014-01-13 16:29:12 +00:00
Sergey Lyubka
56f128514e
Implemented mg_set_http_error_handler()
2014-01-13 12:17:47 +00:00
Sergey Lyubka
a3663da90e
Exposed mg_send_digest_auth_request(). Exported conn->content to Lua
2014-01-13 10:50:26 +00:00
Sergey Lyubka
f74a1e1dc2
Fixed start_process on windows to use correct interpreter
2014-01-12 07:20:53 +00:00
Sergey Lyubka
4d105386ca
Better handling of non-ascii chars for windows CGIs
2014-01-11 23:17:17 +00:00
Sergey Lyubka
e38061970e
Exposed mg_authorize_digest()
2014-01-11 16:44:37 +00:00
Sergey Lyubka
a4e8dc3069
Sending status 200 to CGI by default
2014-01-11 16:18:59 +00:00
Sergey Lyubka
e0b6109214
Added -DNO_FILESYSTEM
2014-01-11 09:48:27 +00:00
Sergey Lyubka
4eef5b14fb
Added comment to https://github.com/cesanta/mongoose/pull/287
2014-01-10 22:48:47 +00:00
Sergey Lyubka
283af71bbf
Merge pull request #287 from oli-obk/fix/last_send_data_before_shutdown
...
mg_printf_data was ignored if mg_destroy_server was called directly afte...
2014-01-10 14:47:00 -08:00
Sergey Lyubka
ff85b802c3
Using case-insensitive string comparison for connection: keep-alive
2014-01-10 22:46:03 +00:00
Sergey Lyubka
e2b42e4117
Using case-insensitive string comparison for connection: keep-alive
2014-01-10 22:43:52 +00:00
Sergey Lyubka
63909b59c5
Added __cdecl to SSL decls to make sure correct linkage with OpenSSL which is cdecl
2014-01-10 22:41:36 +00:00
Sergey Lyubka
e9316a4feb
CGI fixes
2014-01-10 21:59:37 +00:00
Oliver Schneider
2ac231cb7e
mg_printf_data was ignored if mg_destroy_server was called directly after
2014-01-10 18:38:18 +01:00
Sergey Lyubka
a741d53028
Fixed leak for server creation/destroy
2014-01-10 11:23:29 +00:00
Sergey Lyubka
9ea7b6f8ae
Removed unnecessary buffer initializer
2014-01-10 11:11:26 +00:00
Sergey Lyubka
580d3da3c7
Using unicode winapi for stat(), fopen(), open()
2014-01-10 11:03:38 +00:00
Sergey Lyubka
aa59dda966
wrapped read_from_cgi() into NO_CGI
2014-01-09 17:50:57 +00:00
Sergey Lyubka
47b92e4145
Added string defs for 301 and 302 codes in status_code_to_str()
2014-01-09 17:24:20 +00:00
Sergey Lyubka
5fb275e146
Added URL rewrites for HTTP errors, to allow for error pages.
2014-01-09 12:36:25 +00:00
Sergey Lyubka
9390c66b48
Moved next_option() to the rest of string functions
2014-01-09 12:34:50 +00:00
Sergey Lyubka
2f69ca37d3
Better CGI error diagnostic for UNIX
2014-01-09 10:53:25 +00:00
Sergey Lyubka
4cd11de400
Ping only websocket connections
2014-01-09 10:37:17 +00:00
Sergey Lyubka
15a2639355
Added better diagnostic to send_http_error()
2014-01-09 10:35:43 +00:00
Sergey Lyubka
c20f26dbb9
removed mg_fmt()
2014-01-09 09:58:19 +00:00
Sergey Lyubka
cae797cf04
Merge branch 'master' of https://github.com/cesanta/mongoose
2014-01-09 09:37:35 +00:00
Sergey Lyubka
0d885add0e
Fixed put_dir()
2014-01-09 09:36:58 +00:00
Sergey Lyubka
842231cc5c
GetFullPathNameA -> GetFullPathName
2014-01-08 18:20:13 +00:00
Sergey Lyubka
dc55a3ae40
Added #undef UNICODE in mongoose.c to force ANSI Win32 functions
2014-01-08 18:10:15 +00:00
Sergey Lyubka
238b43af84
Squashed warnings for gcc 4.6.3
2014-01-08 09:16:36 +00:00
EC2 Default User
5f2f359bd6
Squashed warning under gcc 4.6.3
2014-01-07 14:53:48 +00:00
Sergey Lyubka
347a8c2f70
Fix source IP in logging
2014-01-06 14:53:41 +00:00
Sergey Lyubka
9624200663
SSL build
2014-01-06 13:31:46 +00:00
Sergey Lyubka
18b1e95350
LSP functionality
2014-01-06 13:08:39 +00:00
Sergey Lyubka
7541c6339a
Removed error_log_file
2014-01-06 11:52:09 +00:00
Sergey Lyubka
31f1efd4f5
Removed index.shtml from the index files
2014-01-06 11:34:32 +00:00
Sergey Lyubka
2477f80a43
Wrapped run_as_user into conditional
2014-01-06 11:32:15 +00:00
Sergey Lyubka
2210043b87
removed mutex calls. wrapped ssl_certificate option in a conditional
2014-01-06 11:22:11 +00:00
Sergey Lyubka
10872b3227
Inlined openssl definitions instead of including a header - preparing for ssl amalgamation
2014-01-05 23:52:43 +00:00
Sergey Lyubka
fa216849e5
Resetting connection flags in close_local_endpoint()
2014-01-04 22:17:16 +00:00
Sergey Lyubka
df6e35e330
dav_auth_file moved
2014-01-04 20:49:54 +00:00
Sergey Lyubka
7cec2fe280
Sorted options list
2014-01-04 20:11:55 +00:00
Sergey Lyubka
d0e2741832
Added new response creation interface
2014-01-04 11:31:55 +00:00
Sergey Lyubka
85940c8045
Moved <netdb.h> to under unix includes
2014-01-04 02:05:18 +00:00
Sergey Lyubka
a0b599b308
Removed protection from mg_write(). Refactored mg_iterate_over_connections()
2014-01-04 00:51:07 +00:00
Sergey Lyubka
675b83a3ef
Let mongoose binary change CWD to document_root
2014-01-03 21:45:13 +00:00
Sergey Lyubka
5475fe661d
Implemented USE_POST_SIZE_LIMIT
2013-12-31 13:57:51 +00:00
Sergey Lyubka
7a77bb1c4a
More descriptive comment in multithreaded example
2013-12-31 09:06:21 +00:00
Sergey Lyubka
4576b69e30
Initializing remote_ip and remote_port properly
2013-12-31 09:02:24 +00:00
Sergey Lyubka
257dacd7bb
Squashed warning about dangerous optimization
2013-12-30 11:43:07 +00:00
Sergey Lyubka
c88b7b19b3
Squashed warning on Windows, using INVALID_SOCKET
2013-12-30 11:35:33 +00:00
Sergey Lyubka
9dde225b5e
Squashed C++ warning in read_from_cgi()
2013-12-26 11:45:44 +00:00
Sergey Lyubka
f5f6edcf5a
Added mg_printf() back
2013-12-26 10:12:18 +00:00
Sergey Lyubka
522a7eb554
Added socket functionality
2013-12-24 11:33:56 +00:00
Sergey Lyubka
072833acd5
Squashed win32 warnings
2013-12-23 10:01:11 +00:00
Sergey Lyubka
a6c2c2a10b
Comparing URI prefix when looking for URI handler
2013-12-23 08:06:10 +00:00
Sergey Lyubka
4708cce8bd
mg_poll_server() returns currect time. add mg_set_listening_socket() and mg_get_listening_socket()
2013-12-21 20:52:54 +00:00
Sergey Lyubka
2990f9328a
struct linked_list_link -> struct ll
2013-12-21 20:10:08 +00:00
Sergey Lyubka
0970e080d9
Added OpenSSL support
2013-12-21 15:50:11 +00:00
Sergey Lyubka
d5b33adb88
Properly crafting HTTP reply line by parsing CGI reply headers
2013-12-21 10:53:20 +00:00
Sergey Lyubka
ec84a148f0
Creating server ctl socket in a loop to protect from interrupt
2013-12-21 10:19:12 +00:00
Sergey Lyubka
58dab48156
Using unsigned char in deliver_websocket_frame() arithmetic
2013-12-20 17:59:07 +00:00
Sergey Lyubka
b7adf9b52a
Passing server_param to the URI callback
2013-12-20 09:44:51 +00:00
Sergey Lyubka
7d0662f1bc
Make WEBSOCKET_PING_INTERVAL_SECONDS overridable from the command line
2013-12-18 10:13:31 +00:00
Sergey Lyubka
e3751d29d5
Made mongoose send websocket PINGs automatically
2013-12-18 09:35:36 +00:00
Sergey Lyubka
9ef42621e0
Fixed wrong memset() in scan_directory()
2013-12-15 10:12:19 +00:00
Sergey Lyubka
f5865886b2
Respecting -run_as_user
2013-12-12 20:31:43 +00:00
Sergey Lyubka
473e2a1cb2
Added <signal.h> for linux, and squashed warning in transfer_file_data()
2013-12-12 13:51:14 +00:00
Sergey Lyubka
146cf1d1c0
Calling mg_socketpair() in a loop until success. Ignoring SIGPIPE. Squashed waring in mg_start_thread()
2013-12-12 13:43:59 +00:00
Sergey Lyubka
4d7ea04dd8
Added cast for c++ friendliness
2013-12-10 00:19:33 +00:00
Sergey Lyubka
653fab6b41
Added skeleton lua support
2013-12-09 15:53:35 +00:00
Sergey Lyubka
f4c30b746e
Switched to async, non-blocking core
2013-12-09 14:18:49 +00:00
Sergey Lyubka
fe087cdce9
Fixed lsp_sock_send(), return value
2013-12-07 17:45:34 +00:00
Sergey Lyubka
ebf9ee089b
Do not send 500 when timing out getreq()
2013-12-05 11:12:07 +00:00
Sergey Lyubka
88cf329490
Closing connection on 5xx errors
2013-12-05 10:47:03 +00:00
Sergey Lyubka
bba29d32ce
Using socketpair for inter-thread communication
2013-12-05 10:01:11 +00:00
Sergey Lyubka
a50a52ca91
Fixed #259
2013-12-04 10:11:12 +00:00
Sergey Lyubka
c6606c714f
Removed symbian-specific #defines. Nokia and Symbian got killed by Microsoft.
2013-11-25 14:32:33 +00:00
Sergey Lyubka
988b40f70d
Moved webdav functions into webdav.c
2013-11-24 17:33:05 +00:00
Sergey Lyubka
b5fdd48d76
Moved websocket functions into websocket.c
2013-11-24 17:29:21 +00:00
Sergey Lyubka
f4f73a8dfa
Init vars in handle_cgi_request()
2013-11-23 15:04:35 +00:00
Sergey Lyubka
2d5d668863
Squashed warning
2013-11-23 13:48:55 +00:00
Sergey Lyubka
87279f3518
Throttling functionality removed
2013-11-23 13:47:07 +00:00
Sergey Lyubka
73019665fa
moved mg_upload() into upload.c
2013-11-23 10:49:13 +00:00
Sergey Lyubka
66824e7757
moved CGI and IO into separate files
2013-11-23 10:47:35 +00:00
Sergey Lyubka
7fe6b29218
mg_get_cookie() moved to string.c
2013-11-23 10:32:43 +00:00
Sergey Lyubka
ebdf973af9
log_access() moved to log.c
2013-11-23 10:31:24 +00:00
Sergey Lyubka
71dd7a96c7
mg_url_decode() moved to string.c
2013-11-23 10:26:28 +00:00
Sergey Lyubka
886dcb3f5d
get_request_len() moved to string.c
2013-11-23 10:25:20 +00:00
Sergey Lyubka
37751a2875
directory ops moved to directory.c
2013-11-23 10:24:25 +00:00
Sergey Lyubka
45347bd44c
Moved mime-type functions to mime.c
2013-11-23 07:48:46 +00:00
Sergey Lyubka
8c4521af03
moved remove_double_dots_and_double_slashes() to string.c
2013-11-23 07:46:11 +00:00
Sergey Lyubka
0d2a8db626
Added #define for WSAPoll
2013-11-22 13:39:57 +00:00
Sergey Lyubka
607651a3ff
Squashed warning for MG_REQUEST_END
2013-11-11 17:18:48 +00:00
Sergey Lyubka
224d18589f
Fixed -DNO_SSL build
2013-11-02 10:24:30 +00:00
Sergey Lyubka
2fd7191836
Squashed C++ void * casting warning
2013-10-30 23:04:35 +00:00
Sergey Lyubka
853d162b55
removed double def for ssl_sw
2013-10-30 23:02:36 +00:00
Sergey Lyubka
915e923e35
Firing MG_HTTP_ERROR
2013-10-10 07:46:19 -07:00
Sergey Lyubka
1777cc6e86
Squashed warning
2013-10-07 17:28:53 +01:00
Sergey Lyubka
cafaecfc56
Moved HTTP client, ssl and some util code into separate files
2013-10-03 19:09:35 +01:00
Sergey Lyubka
47606a71ee
Moved unix and win32 code to different files
2013-10-02 23:21:13 +01:00
Sergey Lyubka
eedfedd13b
Added reference to a relevant pull request in getreq() comment
2013-10-01 19:09:29 +01:00
Sergey Lyubka
87d841d81b
Set content_len to 0 for GET requests without Content-Length header.
2013-10-01 18:49:44 +01:00
Sergey Lyubka
5153eebc9b
mg_read() does not block on content_len=0. mg_read() reads until socket is closed if content-length is not provided
2013-10-01 17:47:32 +01:00
Sergey Lyubka
70154f6c23
Moved mod_lua.c to src/lua.c
2013-10-01 15:16:09 +01:00
Sergey Lyubka
d3577b7877
Moved auth code to separate file
2013-10-01 14:54:26 +01:00
Sergey Lyubka
199e0a330f
Moved options handling to src/options.c
2013-09-30 19:57:33 +01:00
Sergey Lyubka
a8da1b3334
Moved date parsing in build/src/parse_date.c
2013-09-30 19:51:16 +01:00
Sergey Lyubka
63c19b4631
Moved to unix file format
2013-09-30 13:11:24 +01:00
Sergey Lyubka
1f471e1cf3
Moved string functions to src/string.c
2013-09-30 13:09:16 +01:00
Sergey Lyubka
ef28c37529
Removed mg_get_request_info()
2013-09-30 13:02:36 +01:00
Sergey Lyubka
cd7e1b9eb7
Moved more ssl defs to internal.h
2013-09-30 12:59:43 +01:00
Sergey Lyubka
226d476856
Moved more defines to internal.h. Squashed some warnings in win32
2013-09-29 23:58:32 +01:00
Sergey Lyubka
21965e0e03
Splitting monolithic mongoose.c to separate files. Amalgamating into mongoose.c for release.
2013-09-29 23:56:59 +01:00
Sergey Lyubka
1a64d37fc7
Fixed mg_websocket_read()
2013-09-29 09:25:47 +01:00
Sergey Lyubka
ecbf79135f
Refactored API, returned back to event-based handlers. Upload and Websocket API simplified
2013-09-28 11:00:54 +01:00
Sergey Lyubka
079c99c47f
Started to restore single callback function
2013-09-26 13:25:51 +01:00
Sergey Lyubka
98214ce1a4
Removed init_lua() and open_file() callbacks
2013-09-26 09:35:07 +01:00
Sergey Lyubka
b12cc9fd49
Refactored handle_options_request() to use mg_write() with less copying
2013-09-25 18:30:51 +01:00
Sergey Lyubka
a61c3a2636
Added handle_delete_request(). Refactored convert_uri_to_file_name()
2013-09-25 18:24:36 +01:00
Sergey Lyubka
9fd435059f
Setting user_data for fake connection
2013-09-25 14:28:09 +01:00
Sergey Lyubka
3156ac9791
read_websocket(): check for WEBSOCKET_OPCODE_CLOSE corrected
2013-09-25 14:25:14 +01:00
Sergey Lyubka
d67b1dbd53
Added CommonProgramFiles(x86) to the CGI environment under Win32, to make Win32::OLE work under CGI
2013-09-18 08:11:37 +01:00
Sergey Lyubka
19c94ce218
Fix for the issue 109
2013-09-17 16:09:00 +01:00
Sergey Lyubka
5e5033a0f3
Fix for the issue 156
2013-09-16 23:25:30 +01:00
Sergey Lyubka
5bb361b1d2
Squashed warnings
2013-09-12 10:03:04 +01:00
Sergey Lyubka
16c4fe1f37
4.1 -> 4.2
2013-09-07 22:05:39 +01:00
Sergey Lyubka
3070e8572d
removed file locking on windows, to fix the crash introduced by 52e3be5c58
2013-09-07 22:04:59 +01:00
Sergey Lyubka
d5acf2e2a7
4.0 -> 4.1
2013-09-07 20:21:27 +01:00
Sergey Lyubka
73d2b395d1
Moved SIGCHLD handler out of mongoose.c. Embedded user must set SIGCHLD handler if CGI is used.
2013-09-07 19:41:40 +01:00
Sergey Lyubka
e556a487e0
Fix for the SCRIPT_NAME in the presence of PATH_INFO, https://code.google.com/p/mongoose/issues/detail?id=403
2013-09-07 18:49:24 +01:00
Sergey Lyubka
784a1580ce
Merge pull request #232 from ellusak/master
...
use chunked encoding for directory listing
2013-09-05 11:18:07 -07:00
Sergey Lyubka
6a0ac69761
version 3.9 -> 4.0
2013-09-05 12:35:44 +01:00
ellusak
7c06279a8c
use chunked encoding for directory listing
2013-09-05 17:14:34 +08:00
Sergey Lyubka
aec6f85f55
Merge branch 'master' of ssh://github.com/valenok/mongoose
2013-09-02 11:15:57 +01:00
Sergey Lyubka
52e3be5c58
Refactored f[un]lockfile for Windows using LockFileEx/UnlockFileEx
2013-09-02 11:15:48 +01:00
Boris Pek
94933047a7
Fixed compilation warning
2013-08-30 21:32:58 +03:00
Sergey Lyubka
cd6005c86f
Calling thread_stop() before free-ing conn
2013-08-28 09:54:00 +01:00
Sergey Lyubka
00b289a0f4
Added thread_start() and thread_stop()
2013-08-26 12:22:38 +01:00
Sergey Lyubka
85209ac4fa
Reverted contributions by jmucchiello
2013-08-19 11:54:47 +01:00
Sergey Lyubka
93365fcbd2
audio/ogg -> application/ogg
2013-08-19 06:46:13 +01:00
Sergey Lyubka
e40a44ba70
Moved mod_lua to build/
2013-08-18 23:04:36 +01:00
Sergey Lyubka
511ef4137f
Better SSI mime type handling
2013-08-18 13:27:54 +01:00
Sergey Lyubka
479164129b
Styling, lines > 80 chars
2013-08-18 13:16:53 +01:00
Sergey Lyubka
08746115e2
Sending EXTRA_HTTP_HEADERS in handle_file_request()
2013-08-18 13:03:39 +01:00
Sergey Lyubka
218428662e
License change
2013-08-16 11:18:16 +01:00
Sergey Lyubka
2055d41a9f
Corrected misplaced brackets in parse_http_message()
2013-08-14 10:55:36 +01:00
Sergey Lyubka
1ef29c1b3b
Using #define MGSQLEN for the socket queue length
2013-08-14 08:23:30 +01:00
Sergey Lyubka
e95dbb90a7
Sending content-length from put_file()
2013-08-14 08:15:42 +01:00
Sergey Lyubka
cf18c932a4
Refactored parse_http_message()
2013-08-14 07:41:47 +01:00
Sergey Lyubka
a730afc44d
Merge branch 'master' of ssh://github.com/valenok/mongoose
2013-08-14 07:09:28 +01:00
Sergey Lyubka
94296c9697
Corrected check for websocket connection close
2013-08-14 07:09:22 +01:00
Daniel Oaks
90b6fab3bb
Added SERVER_SOFTWARE CGI variable
2013-08-13 21:21:05 +10:00
Pavel Khlebovich
3d6b373c8f
(mg_fgets) Accept lines at the end not terminated by \n
...
(mg_fgets) Don't consume more than size bytes when line cannot fit into buffer.
2013-08-12 14:27:20 +04:00
Pavel Khlebovich
5b84acbc14
Consume \n in mg_fgets when reading from membuf.
2013-08-12 00:47:12 +04:00
Sergey Lyubka
3054a7f09e
Make sure child closes all pipe fds when executing CGI
2013-08-03 07:18:25 +01:00
Sergey Lyubka
2de96bd54e
Workaround for non-compliant vsnprintf()
2013-08-02 11:00:21 +01:00
Sergey Lyubka
2468a8fb38
Merge branch 'master' of ssh://github.com/valenok/mongoose
2013-07-30 11:19:42 +01:00
Sergey Lyubka
ed38a4102e
showing error string as well as numeric error on bind failure
2013-07-30 11:19:33 +01:00
bick
8f79a0564f
Add casts to fix strict compiler errors [-fpermissive]
...
When using g++ and enforcing strict compiler errors, this commit fixes the following:
mongoose.c: In function ‘char* mg_fgets(char*, size_t, file*, char**)’:
mongoose.c:2405:60: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
mongoose.c: In function ‘int set_ports_option(mg_context*)’:
mongoose.c:4586:64: error: invalid conversion from ‘void*’ to ‘socket*’ [-fpermissive]
mongoose.c: In function ‘void* worker_thread(void*)’:
mongoose.c:5104:28: error: invalid conversion from ‘void*’ to ‘mg_context*’ [-fpermissive]
mongoose.c: In function ‘void* master_thread(void*)’:
mongoose.c:5220:28: error: invalid conversion from ‘void*’ to ‘mg_context*’ [-fpermissive]
mongoose.c:5235:58: error: invalid conversion from ‘void*’ to ‘pollfd*’ [-fpermissive]
2013-07-29 11:46:24 -07:00
Sergey Lyubka
2e93cde929
Merge branch 'master' of ssh://github.com/valenok/mongoose
2013-07-28 12:15:30 +01:00
Sergey Lyubka
e53d05637a
Binding to IPv6 addresses
2013-07-28 12:15:16 +01:00
bick
ea81a22529
adding include of openssl/err.h to fix errors when NO_SSL_DL is defined:
...
mongoose.c:4680:23: error: ‘ERR_get_error’ was not declared in this scope
mongoose.c:4681:52: error: ‘ERR_error_string’ was not declared in this scope
2013-07-26 14:12:33 -07:00
Sergey Lyubka
526f3aa31c
Added check for document_root != NULL in convert_uri_to_file_name(). Added #define rmdir _rmdir for win32
2013-07-25 07:22:02 +01:00
Sergey Lyubka
62d66201c9
make match_prefix() case-insensitive
2013-07-25 07:07:25 +01:00
José Miguel Gonçalves
ca019799b9
Fix uninitialized argument in getsockname().
2013-07-24 12:24:13 +01:00
Sergey Lyubka
c6fb9ac3d0
Fixed indenting in is_put_or_delete_request()
2013-07-23 08:24:52 +01:00
Sergey Lyubka
f2e19ca3ff
Fixed indenting
2013-07-23 08:16:38 +01:00
Sergey Lyubka
16c463d2e9
Added compile-time option to set stack size
2013-07-22 10:10:19 +01:00
Sergey Lyubka
61148f1323
Using absolute paths for all file/directory options
2013-07-22 08:23:15 +01:00
Sergey Lyubka
a9d51c0e87
squashed warning
2013-07-20 11:33:34 +01:00
Sergey Lyubka
e003236a03
Made SSI #include file= relative to the current doc, as per spec
2013-07-19 07:57:47 +01:00
Sergey Lyubka
de7745370c
Merge pull request #200 from ejohnstown/master
...
Allow no SSL_CERTIFICATE when using init_ssl callback.
2013-07-18 23:35:16 -07:00
Sergey Lyubka
21786eec8e
Changed int -> SOCKET where appropriate, per Ben Currie
2013-07-18 18:17:48 +01:00
John Safranek
61f5f0b725
Allow no SSL_CERTIFICATE when using init_ssl callback.
2013-07-17 16:37:28 -07:00
Sergey Lyubka
d864d72470
On windows, enclosing path to CGI script in quotes to allow paths with spaces
2013-07-17 08:24:52 +01:00
Sergey Lyubka
7ca5962d2d
in pull_all() and read_request(), respect ctx->stop_flag()
2013-07-16 17:17:36 +01:00
Sergey Lyubka
8ce1562f0d
Using SetHandleInformation() to make socket handles on Windows non-inheritable
2013-07-16 15:52:40 +01:00
Sergey Lyubka
cdc7380d00
3.8 -> 3.9
2013-07-16 08:13:00 +01:00
Sergey Lyubka
faa030385c
Removing extra SSL_shutdown() call.
2013-07-15 18:20:16 +01:00
Sergey Lyubka
bc40aa5442
fixed strtoll() for win32: using _atoi64
2013-07-14 12:49:24 +01:00
Sergey Lyubka
c68df310b8
Added mg_websocket_write(), per morgan3d pull request
2013-07-12 12:25:25 +01:00
Sergey Lyubka
70ce6c5ad3
Added comments to read_websocket(), per morgan3d pull request
2013-07-12 11:55:52 +01:00
Sergey Lyubka
348db16245
NOT redirecting stderr to stdout for UNIX CGI, to avoid output being littered with error messages.
2013-07-11 08:44:51 +01:00
Sergey Lyubka
bcb294620f
increased buffer for the ip address string from 20 to 50, to allow ipv6 addresses
2013-07-10 07:48:06 +01:00
Sergey Lyubka
fa160cb9a3
Merge pull request #191 from kblinova/master
...
Detect Window's style slashes in mg_upload file names
2013-07-01 00:47:21 -07:00
Sergey Lyubka
137d6484e2
Removed bogus comment
2013-07-01 08:46:20 +01:00
Sergey Lyubka
e7c34c26cb
mg_read() with no Content-Length would read until socket is closed
2013-07-01 08:45:07 +01:00
Katerina Blinova
dfb7d928c2
Review revision for windows path separator detection in mg_upload
2013-06-28 11:05:33 -07:00
Katerina Blinova
4bb9faaf50
Detect Window's style slashes in mg_upload file names
2013-06-27 11:46:52 -07:00
Stefan Doehla
17ecb0a459
MKCOL and recursive DELETE
2013-06-12 00:04:07 +02:00
Sergey Lyubka
a0e5494569
Merge pull request #177 from arvidn/master
...
support serving pre-gzipped files
2013-05-30 10:14:45 -07:00
arvidn
d283e3167f
support serving pre-gzipped files transparently provided the user agent accepts gzip content-encoding. The feature breaks if the user agent makes a range request within a gzipped file, and returns 501 in this case
2013-05-30 09:59:11 -07:00
Cody Hanson
94050d44e4
Added bounds checking for listening_ports.
...
Needs to be a valid TCP port number, and not less than 1 or greater than 65535
2013-05-30 10:54:59 -06:00
Sergey Lyubka
33b920ed2c
Exported mg_url_encode()
2013-05-19 08:00:42 +01:00
jwang
063b26fece
Securely close SSL conection
...
For SSL in close_connection, current implementation use close_socket_gracefully to close socket firstly, then SSL_free. In my
testing, this approach may cause some pending write data missing. I'd suggest use standard SSL_shutdown in SSL conection. It
need call twice according to openSSL manual - one call sends the close_notify alert and one call receives the response from
the peer
2013-05-19 10:40:10 +08:00
Sergey Lyubka
add079a949
Added socket functions to lua environment
2013-05-19 01:25:54 +01:00
Sergey Lyubka
5e78711467
Fixed masking in websocket code
2013-05-18 10:29:03 +01:00
Erik Oomen
3a186976d7
Added .mov (quicktime) to builtin_mimes_types
2013-05-16 14:33:58 +02:00
Sergey Lyubka
2e232b3304
Lua functionality change: print renamed to mg.write, read renamed to mg.read. Expanded user manual, fixed example pages.
2013-05-15 17:42:34 +01:00
Sergey Lyubka
d72645bf91
Using local var in open_auth_file
2013-05-15 09:43:38 +01:00
Sergey Lyubka
7d5bcec92d
Better cleanup in close_connection()
2013-05-15 08:28:56 +01:00
Sergey Lyubka
9b76d60b38
Merge pull request #131 from abadc0de/lua_read_fixup
...
lsp_mg_read: remove dead code, return nil on empty read
2013-05-13 10:15:34 -07:00
Sergey Lyubka
63ccf8199f
Style changes in poll()
2013-05-13 18:07:38 +01:00
Sergey Lyubka
6bc6022aa9
Merge pull request #164 from fredfung/master
...
Fix parameter 1 for select in poll()
2013-05-13 10:05:26 -07:00
ff.feng
b68db66e97
Fix parameter 1 for select in poll()
2013-05-13 23:57:26 +08:00
Sergey Lyubka
94e1c5a41b
Added sanity checking in send_file_data()
2013-05-12 23:17:44 +01:00
Sergey Lyubka
ab16220861
Not leaking socket in set ports option
2013-05-10 15:40:19 +01:00
Sergey Lyubka
c0eb3e56b4
Not using realloc2 in set_ports_option
2013-05-10 15:21:55 +01:00
Sergey Lyubka
5591aa5a0d
Added .ttf mime type, https://github.com/valenok/mongoose/issues/129
2013-05-10 14:45:12 +01:00
Sergey Lyubka
6f946f5eea
websocket code fix, https://github.com/valenok/mongoose/pull/146
2013-05-10 13:41:48 +01:00
Sergey Lyubka
a7f97bf2f2
Fixed leaks, per afs-bb https://github.com/valenok/mongoose/pull/161
2013-05-10 12:22:04 +01:00
Sergey Lyubka
cfbaf7f1ae
Expose mg_url_decode to the API
2013-05-08 11:36:38 +01:00
Pavel
c28dc45d4c
removing warning about _CRT_SECURE_NO_WARNINGS if it is already defined
...
modified: mongoose.c
2013-05-06 09:02:30 -04:00
Thileepan
1d9d1111e1
Environmental variables required for PHP cgi.
...
In few windows machines, the environment variables "ProgramFiles" is required to successfully execute PHP code especially socket functions.
2013-05-06 13:05:37 +05:30
Sergey Lyubka
2a0b55b30b
mg_upload: trigger callback when file is already closed
2013-04-26 21:32:22 +01:00
Sergey Lyubka
c352486abb
Squashed warning in push()
2013-04-11 12:51:07 -07:00
Sergey Lyubka
4120b9bcc0
mg_get_cookie() signature change
2013-04-11 12:49:41 -07:00
Sergey Lyubka
272644e39f
mg_md5 returns char *, not void
2013-03-27 01:31:12 -07:00
Hendrik Polczynski
fdef2b8643
Update mongoose.c
...
when having connections with and without auth would cause double free and then crash
2013-03-19 17:42:21 +01:00
abadc0de
ce55924a02
lsp_mg_read: remove dead code, return nil on empty read
2013-03-17 23:33:02 -04:00
Sergey Lyubka
51ed3efcd1
Style fixes
2013-03-09 13:16:41 +00:00
Sergey Lyubka
8d1f6377c4
Changed websocket_data() handler API. Buffering and passing whole websocket message.
2013-03-08 16:03:23 +00:00
Sergey Lyubka
22dddc2eeb
Merge pull request #124 from abadc0de/lua_err
...
Lua page error handling cleanup
2013-03-08 03:15:04 -08:00
Filipp Kovalev
dd49c0791f
A little bit more warnings suppresed
2013-03-08 14:41:17 +04:00
Sergey Lyubka
4b539d4b95
Suppressed some mingw warnings
2013-03-08 07:18:39 +00:00
Sergey Lyubka
5eabfe5da2
Using pijyoi's patch for connection close.
2013-03-08 07:08:09 +00:00
Sergey Lyubka
36b7c8d60d
Forcing connection close when client disconnects.
2013-03-08 07:03:23 +00:00
abadc0de
aa37b728ad
Merge commit '10234' into lua_err
2013-03-07 03:02:15 -05:00
Sergey Lyubka
fb5e2b8c2f
Setting off IPV6_V6ONLY for USE_IPV6 case
2013-03-05 18:55:33 +00:00
Sergey Lyubka
4505b00733
Removed support for option names
2013-03-05 18:26:10 +00:00
Sergey Lyubka
3892e0199e
Passing user_data to init_ssl()
2013-02-28 09:12:52 +00:00
abadc0de
10234b07c4
Remove dead code
2013-02-27 16:33:05 -05:00
abadc0de
36a83e1452
Merge https://github.com/valenok/mongoose
2013-02-27 15:32:43 -05:00
abadc0de
34df4ec1fd
Fix mg.onerror returns non-zero to stop processing
2013-02-27 15:29:18 -05:00
Sergey Lyubka
7204d71136
Merge pull request #102 from abadc0de/master
...
Better error handling and an include function for lua pages
2013-02-27 03:27:28 -08:00
Sergey Lyubka
283f590349
Merge pull request #106 from BusyJay/feature-2
...
Fix bugs about range request and explorer crashes
2013-02-27 03:21:33 -08:00
abadc0de
ab960df8a9
Lua call stack cleanup
2013-02-25 20:48:36 -05:00
abadc0de
08048bd5bb
Merge https://github.com/valenok/mongoose
2013-02-25 16:23:50 -05:00
abadc0de
800517ac16
Added support for lua error handling and includes
...
- Added mg.onerror, mg.include, mg.redirect
- mg.onerror, if overridden, lets the user trap syntax errors and
other loadbuffer errors, and dump stack traces and debug info
for uncaught runtime errors.
- Log unexpected errors from mg.onerror handlers
- Provide mg.cry so custom handlers can reproduce default behavior
- Call mg.onerror handler before unwinding stack
- If mg.onerror returns non-0, stop loading chunks
- Included pages stop parent page processing if mg.onerror returns non-zero
- Included pages don't sent HTTP errors, they throw lua errors
2013-02-25 16:19:38 -05:00
Jay
690eff4fa2
Fix bugs about range request and explorer crashes
...
1. fix a bug that when header contains "Range: 100-", the range request
support will fail
2. (windows) fix a bug that when explorer.exe crashes due to some
reason, the tray icon will disappear.
2013-02-25 22:17:46 +08:00
Sergey Lyubka
e47b5b775a
Squashed warning
2013-02-24 20:34:32 +00:00
KIU Shueng Chuan
d8536b011c
portable socket type should be SOCKET
2013-02-24 23:41:32 +08:00
KIU Shueng Chuan
a2239c2b4b
squash mingw variable set but not used warning
2013-02-24 23:29:05 +08:00
KIU Shueng Chuan
d3c02331d4
squash mingw printf format warning
2013-02-24 23:22:34 +08:00
KIU Shueng Chuan
08708435a7
avoid defining macros already present on mingw32
2013-02-23 10:37:45 +08:00
Sergey Lyubka
7931929a42
Fix compile of mg_strcasestr() under windows
2013-02-18 10:49:03 +00:00
Sergey Lyubka
3d211d89c5
win32 mmap() must not close file handle, issue 99
2013-02-16 14:37:58 +00:00
Sergey Lyubka
fbf1ccee45
Fix out-of-bounds acces in url_decode()
2013-02-16 14:31:37 +00:00
Sergey Lyubka
0bd43bcae3
Using mg_strcasestr() instead of strstr()
2013-02-16 14:17:38 +00:00
Sergey Lyubka
463b49f1bd
Fixed poll() issue with QNX
2013-02-16 12:54:02 +00:00
Joe Mucchiello
2efc5d9fce
http_error callback
...
Allow user to display status code errors
2013-02-10 15:58:06 -05:00
Joe Mucchiello
1cb094e059
Revert "Add http_error callback"
...
This reverts commit 27fe9c8f01
.
2013-02-10 15:50:20 -05:00
Joe Mucchiello
27fe9c8f01
Add http_error callback
...
Allows user code to display its own error status responses or just log
the errors. Is called even in cases where begin_request is not called.
2013-02-10 15:02:37 -05:00
Sergey Lyubka
1415d187eb
Added comments about auth checks done before begin_request()
2013-02-10 15:32:08 +00:00
Sergey Lyubka
a65078b858
Calling begin_request() after auth checks.
2013-02-10 15:25:11 +00:00
Sergey Lyubka
63e8052e4b
Added index.lp to the index_files
2013-02-08 10:26:25 +00:00
Sergey Lyubka
72803eb7f8
num_threads 20 -> 50
2013-02-08 10:09:53 +00:00
Sergey Lyubka
845d7b08e1
Fixed assert for keepalive code path
2013-02-08 08:21:52 +00:00
Sergey Lyubka
ffa983552f
3.7 -> 3.8
2013-02-06 09:40:26 +00:00
Sergey Lyubka
d53902844c
Squashed warning for lua+sqlite code path
2013-02-04 22:14:42 +00:00
Sergey Lyubka
b80157b7ea
Setting user data pointer properly
2013-02-03 19:15:27 +00:00
Sergey Lyubka
bdd933f597
Fixed UNIX code path for handle_lsp_request()
2013-02-02 16:41:43 +00:00
Sergey Lyubka
ee55d38b55
API CHANGE: using struct mg_callbacks
2013-02-01 16:48:30 +00:00
Sergey Lyubka
51a80e4844
Do not output headers when serving Lua server pages
2013-01-31 15:17:19 +00:00
Sergey Lyubka
ce0826e285
Adding lua+sqlite functionality in the default windows binary build
2013-01-31 13:38:32 +00:00
Sergey Lyubka
b21a8b2193
Removed wait_until_socket_is_readable(). Rely on socket timeout.
2013-01-29 11:21:23 +00:00
Konstantin Sorokin
3f78df86ac
fixed typo
2013-01-28 18:49:19 +04:00
Sergey Lyubka
c30f7a5258
Merge pull request #77 from bamiaux/add_request_timeout
...
Add request_timeout option
2013-01-28 03:13:28 -08:00
Sergey Lyubka
dc513a9a15
Wrapped SSL code into #ifndef NO_SSL
2013-01-27 20:49:17 +00:00
Sergey Lyubka
e63f7fe33a
Always initializing struct file on stack
2013-01-25 21:50:00 +00:00
Sergey Lyubka
b589e0cdf4
Fixed mg_upload() and some SSL related issues
2013-01-25 20:28:09 +00:00
Sergey Lyubka
75d9a6c844
Removed mg_connect() and mg_fetch(). Added mg_download()
2013-01-23 21:54:27 +00:00
Sergey Lyubka
b783813e54
Always sending MG_NEW_REQUEST, as first step in processing the request
2013-01-22 12:28:22 +00:00
Sergey Lyubka
322ed3cc6f
fflush()-ing uploaded file before calling MG_UPLOAD callback
2013-01-21 01:39:14 +00:00
Sergey Lyubka
6d4d53c247
Squashed linux warning in process_new_connection()
2013-01-20 10:11:57 +00:00
Sergey Lyubka
e6f8d40942
SSL redirect, using Host: header
2013-01-20 10:06:31 +00:00
Sergey Lyubka
76d913796c
Getting first SSL listener dynamically
2013-01-19 22:32:26 +00:00
Sergey Lyubka
f79bd71fd4
Implemented ssl redirection
2013-01-19 10:45:58 +00:00
Sergey Lyubka
f24bebaca8
3.6 -> 3.7
2013-01-18 11:08:20 +00:00
Sergey Lyubka
d3005df019
Bug fix in Win32 mg_mkdir
2013-01-17 17:51:59 +00:00
Sergey Lyubka
ef9b103a00
Started adding ssl redirection support
2013-01-17 17:50:18 +00:00
Sergey Lyubka
f109030cd0
Renamed: global_passwords_file -> global_auth_file, put_delete_passwords_file -> put_delete_auth_file.
2013-01-17 17:14:11 +00:00
Sergey Lyubka
5646caa572
Using poll() instead of select() to prevent FD_SETSIZE overflows, for programs that open large number of descriptors
2013-01-16 23:45:03 +00:00
Sergey Lyubka
a8b08c6784
Fixing http://code.google.com/p/mongoose/issues/detail?id=392
2013-01-15 13:24:53 +00:00
Sergey Lyubka
1fb6f391a1
In mg_upload(), use fopen() with "wb" mode instead of "wbx", cause "x" is not understood by Mac and Windows.
2013-01-13 10:55:42 +00:00
Sergey Lyubka
8455742440
Pass reply status code to MG_REQUEST_COMPLETE
2013-01-10 09:56:24 +00:00
Sergey Lyubka
a6e74e7707
3.5 -> 3.6
2013-01-09 20:55:21 +00:00
Benoît Amiaux
acf72a6109
Add request_timeout option
2013-01-09 17:09:04 +01:00
Sergey Lyubka
cdb6588973
Fix to stop misbehaving clients to DoS mongoose
2013-01-09 14:30:25 +00:00
Sergey Lyubka
eecf24b20c
Improved CGI disclosure protection
2013-01-09 14:24:50 +00:00
Sergey Lyubka
bde9a63390
Endianess patch by Forrest
2013-01-03 10:29:34 +00:00
Sergey Lyubka
5e491801da
3.4 -> 4.5
2012-12-26 10:02:14 +00:00
Sergey Lyubka
eed09600f7
Ignoring .htpasswd file for PUT and DELETE requests. Those use separate passwords file.
2012-12-25 11:49:41 +00:00
Sergey Lyubka
8d6634ff7e
Allowing HEAD method for CGI requests
2012-12-25 11:22:48 +00:00
Sergey Lyubka
6c9ed3ca53
Changed GetFullPathName -> GetFullPathNameA
2012-12-25 11:08:03 +00:00
Sergey Lyubka
ede1befffa
Fix read_websocket() for content length > 125
2012-12-25 11:05:19 +00:00
Sergey Lyubka
2cd4852321
Restore SIGCHLD handler to SIG_DFL in CGI process
2012-12-25 11:00:29 +00:00
Sergey Lyubka
1eb719f2d9
Checking for endianness in runtime in MD5 and SHA code
2012-12-24 21:23:34 +00:00
Sergey Lyubka
113c9d5a02
Fix keep-alive handling in process_new_connection()
2012-12-24 11:01:56 +00:00
Sergey Lyubka
ab3c070e1c
Merge pull request #66 from nullable-type/master
...
Made behavior of mg_get_cookie(..) regarding errors the same as of mg_get_var(..)
2012-12-23 04:40:35 -08:00
Sergey Lyubka
2e6a01b931
Fix for the relative document root & PHP
2012-12-22 18:24:48 +00:00
tayS
6869b64b31
Fix for hang when sending large request with SSL enabled
...
When using SSL, we must use SSL_pending() in addition to/instead of select() to determine whether there is SSL data to be read.
This update makes the SSL_pending() function available and uses is to check for data if select() indicates there is no data.
See https://github.com/valenok/mongoose/issues/47
2012-12-21 12:38:34 -06:00
nullable.type
8faf6f7b72
Made behavior of mg_get_cookie(..) on errors the same as mg_get_var(..). Separated the two cases a.) problems with destination buffer and b.) cookie header or cookie parameter not existing.
2012-12-16 22:20:21 +01:00
nullable.type
c9183f3851
Made the names of the function arguments of the declaration and the definition of mg_get_var(..) the same.
...
Changed the error codes to have a consistent way of reporting errors. -2 is returned if there is a problem with the size of the destination buffer. -1 is returned if the variable is not found.
Updated the documentation of mg_get_var(..) in mongoose.h and removed the redundant comments from mongoose.c.
2012-12-16 12:27:53 +01:00
Sergey Lyubka
0912a7f473
Merge pull request #60 from bakanatorz/master
...
Added support for Ogg Vorbis audio files
2012-12-09 13:26:57 -08:00
Sergey Lyubka
64cfe1d389
Merge pull request #49 from nullable-type/master
...
Avoid some level-4 warnings issued by Visual Studio (2012 and possibly previous versions)
2012-12-08 06:47:35 -08:00
Sergey Lyubka
69b0b58d46
Merge branch 'master' of ssh://github.com/valenok/mongoose
2012-12-07 01:50:52 +00:00
Sergey Lyubka
0d442058e5
Added mg_upload()
2012-12-07 01:50:47 +00:00
Sergey Lyubka
0b09df97ac
On new connection, clear off receiving buffer
2012-12-05 23:07:20 +00:00
Sergey Lyubka
080cb2dd4b
Changed signature of url_decode(): signalling on destination buffer overflow. mg_get_var() now does not require extra space for variable buffer
2012-11-14 09:26:02 -08:00
Eric Bakan
786caaecb2
Added support for Ogg Vorbis audio files
2012-11-12 10:40:19 -05:00
nullable.type
eb92b5f1b3
Avoid memory leaks if duplicate options are passed.
2012-11-02 22:52:47 +01:00
nullable.type
c5ba6016aa
Suppress warning C4127 (conditional expression is constant) issued by Visual Studio 2012 introduced by FD_SET(..) which is using the do-while(0) trick.
2012-10-27 14:09:26 +02:00
nullable.type
73a845a327
Suppress warning C4204 (non-constant aggregate initializer) issued by Visual Studio 2012 due to missing C99 support.
2012-10-27 14:07:06 +02:00
nullable.type
6eec552ea4
Added declaration to avoid warning C4115 (named type definition in parentheses) issued by Visual Studio 2012.
2012-10-27 14:04:41 +02:00
Sergey Lyubka
4fcb64fe90
Fix exception in win32 code path when CGI exec fails
2012-10-24 10:12:32 +01:00
Sergey Lyubka
8966f47c7a
Merge branch 'master' of ssh://github.com/valenok/mongoose
2012-10-23 20:21:38 +01:00
Sergey Lyubka
e251375c0c
Using .lp extension for Lua server pages
2012-10-23 20:21:24 +01:00
Mitch Hendrickson
f8713ede2d
Use existing must_close flag instead of adding is_closing
2012-10-19 19:51:01 -07:00
Mitch Hendrickson
0b5f854bf0
Fix 30s timeout when closing a socket that has no remaining data, introduced in 375950f6; setting the socket nonblocking makes recv() return instantly but not select()
2012-10-15 23:09:14 -07:00
Sergey Lyubka
3770020b74
Remove winsock include - windows.h does that for us
2012-10-14 15:08:43 +01:00
Sebastian Reinhard
025cd283c4
Fixed an error in mongoose.c that caused a lot of errors where winsock2.h was included after windows.h
2012-10-13 12:47:51 +02:00
Sergey Lyubka
5157bd0960
Merge branch 'master' of ssh://github.com/valenok/mongoose
2012-10-10 15:12:30 +01:00
Sergey Lyubka
2aaedef4af
Trimming whitespaces properly in windows CGI interpreter name
2012-10-10 15:12:16 +01:00
shantanugadgil
011bdc22b2
Update mongoose.c
...
Add default MIME type for xsl
2012-10-08 09:55:33 +05:30
Sergey Lyubka
b437d56736
Added MG_INIT_LUA event
2012-10-08 00:09:43 +01:00
Sergey Lyubka
038f8823f1
Added test to mg_stat(). Fixed set_gpass()
2012-10-05 08:58:13 +01:00
Sergey Lyubka
03dd8367bf
Merge branch 'master' of ssh://github.com/valenok/mongoose
2012-10-05 02:10:47 +01:00
Sergey Lyubka
b597da34da
Pass user_data to the callback
2012-10-05 02:10:35 +01:00
Sergey Lyubka
365b5e8f8a
Using long for file size in MG_OPEN_FILE ev_data
2012-10-01 10:19:20 +01:00
Sergey Lyubka
47651766fb
Squashed warning under linux
2012-09-30 16:35:09 +01:00
Sergey Lyubka
55c8c82c4b
Fixed windows build
2012-09-29 22:21:10 +01:00
Sergey Lyubka
557d1f4c49
Added MG_OPEN_FILE message
2012-09-29 18:56:41 +01:00
Sergey Lyubka
6bd35a4c18
Style changes
2012-09-28 10:36:31 +01:00
Sergey Lyubka
3ffdf5459a
API change: folded user_data into request_info, and introduced event-specific ev_data
2012-09-27 22:20:02 +01:00
Sergey Lyubka
02098b1903
API change: folded user_data into request_info, and introduced event-specific ev_data
2012-09-27 21:48:05 +01:00
Sergey Lyubka
d970705596
#define MAP_PRIVATE 0 for _WIN32
2012-09-27 08:19:14 +01:00
Sergey Lyubka
5c9ab40601
Using MAP_PRIVATE for mmap, to fix mac build for Lua
2012-09-27 08:17:31 +01:00
Sergey Lyubka
30d1573346
Fixed spawn_proccess() for win32 for .exe binaries
2012-09-27 00:27:20 +01:00
Sergey Lyubka
8c1866a4af
Lua server pages support
2012-09-26 23:37:03 +01:00
Sergey Lyubka
7fe2944477
Squashed warnings in win32 websocket code
2012-09-24 21:24:02 +01:00
Sergey Lyubka
93131417e6
is_websocket_request() modified to check for the presence of keyword rather then euqality
2012-09-24 09:38:02 +01:00
Sergey Lyubka
2118de37c3
3.3 -> 3.4
2012-09-23 15:02:18 +01:00
Sergey Lyubka
2ffb558e30
nullify ssl_mutexes after free-ing them
2012-09-23 14:19:36 +01:00
Sergey Lyubka
ba6c01e602
Fixed check_acl()
2012-09-23 13:50:36 +01:00
Sergey Lyubka
dfc0f00478
Implement -T option, throttling functionality
2012-09-23 13:28:27 +01:00
Sergey Lyubka
ecb2b0e53d
Cleaner compilation for 16-bit targets
2012-09-23 02:13:53 +01:00
Sergey Lyubka
ed74cd82f5
Added declarations for printf like functions
2012-09-23 01:35:59 +01:00
Sergey Lyubka
d2be594262
defining PATH_MAX if not defined
2012-09-22 15:49:58 +01:00
Sergey Lyubka
1e632d3215
Removed "Content-Type: text/plain" header from send_http_error() response.
2012-09-22 15:21:21 +01:00
Sergey Lyubka
5642dfcf38
CGI handling on windows: constructing full path to the interpreter. enabling SO_REUSEADDR on listening socket.
2012-09-22 15:15:46 +01:00
Sergey Lyubka
4dff36ffde
removed unused struct timespec
2012-09-22 13:36:24 +01:00
Sergey Lyubka
bce3a85702
#including winsock2 and ws2tcpip headers by default on windows
2012-09-21 19:22:35 +01:00
Sergey Lyubka
f741349d51
Fixed calculation of the number of leap days
2012-09-21 17:21:04 +01:00
Sergey Lyubka
25863b59a6
Sending MG_WEBSOCKET_CLOSE
2012-09-21 09:05:45 +01:00
Sergey Lyubka
586574e176
Added #pragma comment(lib, "Ws2_32.lib") for win32
2012-09-21 09:03:47 +01:00
Sergey Lyubka
0f15954727
Skip SSL init if PEM file is not specified
2012-09-20 20:39:43 +01:00
Sergey Lyubka
167338f216
Using slash, "/" as the universal directory separator throughout the code
2012-09-20 18:20:41 +01:00
Sergey Lyubka
614b219a27
Marking WRITE end of a pipe as closed in handle_cgi_request()
2012-09-20 17:22:22 +01:00
Sergey Lyubka
35cf8687df
Merge pull request #32 from okigan/master
...
Compile on Windows
2012-09-20 08:45:31 -07:00
Sergey Lyubka
d883b0f0f9
Prevent possible assert fail on windows in handle_cgi_request()
2012-09-20 15:11:38 +01:00
Sergey Lyubka
364235e7ae
Squashed warning on windows
2012-09-20 14:54:51 +01:00
Sergey Lyubka
98fb44f836
Refactored data buffering. Updated websocket example to have 2 message roundtrips.
2012-09-20 13:45:35 +01:00
Igor Okulist
2260c8ddc0
Merge branch 'master' of https://github.com/okigan/mongoose
2012-09-19 20:57:00 -07:00
Sergey Lyubka
f9873eb87a
Experimentl websocket support
2012-09-19 12:23:54 +01:00
Sergey Lyubka
358e4ffbf5
extra check in cry() for NULL context
2012-09-18 09:47:29 +01:00
Sergey Lyubka
9aad922983
added mg_get_ssl_context. passing fake connection to the MG_INIT_SSL event
2012-09-17 23:36:06 +01:00
Sergey Lyubka
05b2a04267
moved status_code, user_data, log_message out of struct mg_request_info
2012-09-17 19:38:19 +01:00
Sergey Lyubka
4408083b4d
removed ssl chain file option. restored context param in fc() call
2012-09-17 19:19:15 +01:00
Igor Okulist
4f01f101fc
Compile on Win32
2012-09-15 20:40:28 -07:00
Sergey Lyubka
d9f9911d9b
removed max request size from options, moved to the #define
2012-09-15 10:58:50 +01:00
Sergey Lyubka
0bb67e06c1
#define _XOPEN_SOURCE 600 only for linux
2012-09-15 10:51:35 +01:00
Sergey Lyubka
518b3aa726
Merge pull request #12 from nigels-com/master
...
Touch-ups for Regal build of mongoose
2012-09-14 03:28:20 -07:00
Sergey Lyubka
8072b0a7d4
Do not report error if mg_printf() printed 0 bytes
2012-09-13 21:58:37 +01:00
Sergey Lyubka
43953782f9
Do not require SSL, fix for issue 20
2012-09-06 10:06:30 +01:00
Sergey Lyubka
12e133a5e9
Merge branch 'master' of ssh://github.com/valenok/mongoose
2012-09-06 10:00:42 +01:00
Sergey Lyubka
e92d4451ef
fc() doesnt take ctx argument anymore
2012-09-06 09:54:39 +01:00
Marin Atanasov Nikolov
0521d78982
Fix building of mongoose under FreeBSD.
...
According to flockfile(3) under Linux you need only this:
#define _XOPEN_SOURCE
* http://man7.org/linux/man-pages/man3/flockfile.3.html
This also fixes the build under FreeBSD.
2012-09-04 11:58:45 +03:00
Sergey Lyubka
3602d54a5b
Better check for NULL in mg_connect()
2012-09-03 22:36:40 +01:00
Nigel Stewart
fafc9c6a20
Undefine WIN32_LEAN_AND_MEAN, if necessary.
...
Allow debug tracing to be disabled in debug-mode build by defining DEBUG_TRACE at compile-time.
2012-08-28 08:25:10 -05:00
Sergey Lyubka
c92d7c3bc8
Fix for Android: fread() might return < 0
2012-08-25 22:10:45 +01:00
Sergey Lyubka
ee91109d9f
Ger Hobbelt's fixes
2012-08-25 22:02:51 +01:00
Sergey Lyubka
ab6f145e3e
Update thread count on OOM error in worker_thread()
2012-08-25 20:24:09 +01:00
Sergey Lyubka
3d3359910f
Added printf format checking macros. Changed mg_printf() to allocate the buffer on heap if it does not fit the local one.
2012-08-19 12:08:33 +01:00
Ger Hobbelt
ccf43fe3e3
backport of the relevant fix as per http://code.google.com/p/mongoose/issues/detail?id=370#c5
2012-08-18 21:44:29 +02:00
Sergey Lyubka
8b491d75b5
added const in mg_get_request_info()
2012-08-18 16:47:25 +01:00
Sergey Lyubka
d70c18d692
3.2 -> 3.3
2012-08-17 21:42:25 +01:00
Sergey Lyubka
9378946e7d
Added comments in read_request()
2012-08-17 02:13:18 +01:00
Sergey Lyubka
d7e6492fac
Refactored code that discards request data after handling
2012-08-17 01:49:36 +01:00
Sergey Lyubka
102101e9d6
Corrected dangerous assert() in process_new_connection
2012-08-16 22:48:29 +01:00
Sergey Lyubka
cf53f3da4f
Revert "Added MG_SHUTDOWN event"
...
This reverts commit 15a0d819ed
.
There is no point in MG_SHUTDOWN. Thread that calls mg_stop() can
do the same thing.
2012-08-16 20:20:18 +01:00
Sergey Lyubka
15a0d819ed
Added MG_SHUTDOWN event
2012-08-16 17:24:33 +01:00
Sergey Lyubka
6add727c72
%zu printf spec is not understood by MS compiler, changing it to %lu
2012-08-16 11:33:16 +01:00
Sergey Lyubka
375950f6d7
Fixed hang for keep-alive connections
2012-08-16 00:05:46 +01:00
Sergey Lyubka
38d805933e
Passing mg_connection to pull() function, in order to give it access to the stop status
2012-08-15 21:51:46 +01:00
Sergey Lyubka
941500f967
Sorted options list alphabetically
2012-08-15 21:40:43 +01:00
Sergey Lyubka
6619f2edac
Implemented -x option
2012-08-14 16:06:10 +01:00
Sergey Lyubka
33853cd5de
BUFSIZ -> MG_BUF_LEN
2012-08-14 13:32:24 +01:00
Sergey Lyubka
9a807aa7be
Added If-None-Match support
2012-08-14 08:26:42 +01:00
Sergey Lyubka
4a5e1ecf92
Fixed error logging in set_ssl_option()
2012-08-11 10:29:08 +01:00
Sergey Lyubka
0e0091e1c0
Changing API: callback doesnt get mg_request_info pointer anymore, but it is possible to get it using mg_get_request_info()
2012-08-03 11:15:38 +01:00
Sergey Lyubka
e8f3132aa8
Added .json => text/json mime type. In handle_cgi_request, closing write stream straight after data is sent to the CGI process.
2012-08-03 00:10:01 +01:00
Sergey Lyubka
dccc524adb
Fixed fseek() on large files on windows, using _lseeki64() and not casting to off_t
2012-08-02 15:41:39 +01:00
Sergey Lyubka
b42d25edd2
NOT exporting string functions
2012-07-31 23:52:46 +01:00
Sergey Lyubka
39215f6930
Exported mg_get_builtin_mime_type()
2012-07-31 08:58:44 +01:00
Sergey Lyubka
df7da95cb6
Setting Host header in mg_fetch. Added test for fetching large file.
2012-07-29 17:12:44 +01:00
Sergey Lyubka
4bc508525b
Exported string functions
2012-07-29 14:04:48 +01:00
Sergey Lyubka
a9bb7d78ab
Fixed mg_fetch() by passing a buffer, placeholder for the reply headers
2012-07-29 10:15:37 +01:00
Sergey Lyubka
e6bb39a2d3
Using client-side SSL context for mg_connect()
2012-07-28 18:57:04 +01:00
Sergey Lyubka
104480ed9c
mg_start_thread() exported
2012-07-28 12:06:26 +01:00
Sergey Lyubka
c1ab21ecfe
Argh, nasty typo fixed
2012-07-28 11:32:05 +01:00
Sergey Lyubka
6c54370aa1
Added mg_connect(), mg_fetch() API functions. More tests added
2012-07-28 11:04:03 +01:00
Sergey Lyubka
0b4676b711
More unit test for parse_http_header()
2012-07-14 10:29:38 -07:00
Sergey Lyubka
39fd804aeb
Using BUFSIZ->16384 buffer size for the headers returned by CGI. BUFSIZ may be too small, e.g. 512
2012-06-15 22:38:49 +01:00
Sergey Lyubka
97392645c4
Refactored read_request()
2012-06-07 21:36:57 +01:00
Sergey Lyubka
9771d184f2
Squashed -DNO_SSL build warning
2012-06-06 06:45:23 +01:00
Sergey Lyubka
3ca6155add
should_keep_alive() nitpick fix
2012-06-04 22:56:58 +01:00
Sergey Lyubka
594a37d51d
refactored should_keep_alive() for better readability
2012-06-04 22:51:22 +01:00
Sergey Lyubka
5071978267
Corrected should_keep_alive() per bel2s suggestions
2012-06-04 22:49:16 +01:00
Sergey Lyubka
e6357396ef
made readdir() static
2012-05-31 15:42:15 +01:00
Sergey Lyubka
bd3b812b82
Added index.shtml and index.php to index_files
2012-05-27 10:35:51 +01:00
Sergey Lyubka
4c5fee9673
Protect from DoS with negative Content-Length
2012-05-19 07:38:50 +01:00
Sergey Lyubka
cdd905c0fb
Added #include <ws2tcpip.h>
2012-03-29 11:09:35 +01:00
Sergey Lyubka
5a22cb90b9
Fixing #327
2012-03-23 19:37:21 +00:00
Sergey Lyubka
9d4d48e703
Using mg_sleep() instead of sleep()
2012-03-13 21:17:03 +00:00
Sergey Lyubka
108a9739f4
3.1 -> 3.2
2012-03-11 22:54:12 +00:00
Sergey Lyubka
2824ae345d
Added new event, MG_REQUEST_COMPLETE
2012-03-11 22:38:28 +00:00
Sergey Lyubka
a6678814af
Checking malloc return code in worker_thread()
2012-03-11 22:25:27 +00:00
Sergey Lyubka
cda24d94fb
Fixed overflow in substitute_index_file()
2012-03-11 22:19:12 +00:00
Sergey Lyubka
f085e68baf
Added check for the duplicate option
2012-03-11 22:14:50 +00:00
Sergey Lyubka
b78110b92e
Using MSG_NOSIGNAL in send()
2012-03-11 21:58:04 +00:00
Sergey Lyubka
37503c78c8
setting conn->must_close = 1; in handle_propfind()
2012-03-11 21:52:12 +00:00
Sergey Lyubka
83447fb6e5
Fix Windows build
2012-03-11 21:32:53 +00:00
Sergey Lyubka
2a3f31f521
Using g++ for compilation. Fixed C++ build.
2012-03-06 20:19:47 +00:00
Sergey Lyubka
dcecfadbeb
Use static initialization for STARTUPINFO and PROCESS_INFORMATION
2012-03-04 19:40:25 +00:00
Sergey Lyubka
5faa2de3f5
Directory request closes the connection
2012-03-04 16:24:18 +00:00
Sergey Lyubka
6dc1b347a0
Various fixes from bel2125, http://code.google.com/r/bel2125-mongoose/source/detail?r=9fe067d34a3f3a7311f86627b8e1ecb7719a663d
2012-03-04 16:00:12 +00:00
Sergey Lyubka
c88f736971
Removed DEBUG_TRACE from convert_uri_to_file_name()
2012-02-22 18:30:59 +00:00
Sergey Lyubka
b10b989865
Increasing master thread priority on Windows
2012-02-20 23:27:40 +00:00
Sergey Lyubka
ba8b07387c
Issue 317: increase priority of the master thread
2012-02-20 18:44:02 +00:00
Sergey Lyubka
d05b7b06aa
PATH_INFO support
2012-02-20 18:42:32 +00:00
Sergey Lyubka
6576a783da
Remove proxy code
2012-02-12 08:49:59 +00:00
lsm
86e3cd262b
Using IS_DIRSEP_CHAR() in remove_double_dots_and_double_slashes()
2012-02-10 22:01:42 +00:00
Sergey Lyubka
84a76fba69
Remove repeating backslashes only on Windows
2012-02-09 22:53:56 +00:00
Sergey Lyubka
76dd31055e
Exporting SystemDrive environment variable for CGIs on Windows
2012-02-05 13:04:52 +00:00
Sergey Lyubka
b5ed7ed7d1
Changed NO_IPV6 to USE_IPV6. Also, using inet_ntop() everywhere.
2012-02-05 12:27:58 +00:00
Sergey Lyubka
7af9df9fab
Added preliminary IPv6 support
2012-02-01 21:50:22 +00:00
Sergey Lyubka
6905a9a0cb
Formatting changes
2012-01-30 18:56:17 +00:00
Sergey Lyubka
f56dcb8989
removed match_extension()
2012-01-29 21:22:42 +00:00
valenok
8ea40bae4b
Introduced $ meta character in glob expressions
2012-01-26 03:21:51 +00:00
valenok
905413b656
Fix issue 300
2012-01-24 16:05:07 +00:00
valenok
ed70793670
Options ssi_extensions, cgi_extensions became cgi_pattern, ssi_pattern
2012-01-24 09:30:01 +00:00
valenok
01c5ee0973
Added -w option
2012-01-23 22:03:36 +00:00
Sergey Lyubka
aa90972a31
Set code 302 automatically if CGI reply has Location: header present
2011-11-06 11:24:23 +01:00
Sergey Lyubka
8601b03ead
Do not set Connection: keep-alive unless -enable_keep_alive is set
2011-11-06 10:04:55 +01:00
Sergey Lyubka
4e551d9a1d
Copyright year changed to 2011. Fixed documentation string for mg_get_cookie()
2011-08-26 21:30:20 +01:00
Sergey Lyubka
5edfe797f1
Using _beginthread() for starting threads on Windows
2011-08-26 13:03:15 +01:00
Sergey Lyubka
8442a9ceea
Fix stuck master thread in produce_socket() by always signalling sq_empty from the worker threads
2011-08-26 10:19:19 +01:00
Sergey Lyubka
5d70ffe878
parse_date_string() interprets time in UTC, as per standrard
2011-08-26 08:57:04 +01:00
Sergey Lyubka
f749eeb795
Style changes: using C++ comments everywhere
2011-08-25 16:57:17 +01:00
Sergey Lyubka
60408deaa8
Fix -DNO_CGI build
2011-08-24 13:11:41 +01:00
Sergey Lyubka
bc900844f1
Added .mp4 and .m4v mime types
2011-08-24 13:05:49 +01:00
Sergey Lyubka
a49c688d48
Fixed directory traversal security issue for windows
2011-08-24 12:55:08 +01:00
Sergey Lyubka
ba714de066
Added directory listing support to the PROPFIND method
2011-08-24 08:24:20 +01:00
Colin Leitner
015ddf8ac1
Basic PROPFIND support. Not capable of listing a directory yet.
2011-08-20 12:13:23 +02:00
Colin Leitner
22754f403d
Fixed bug in handle_directory_request, that used the unintialized path variable instead of dir for an error message.
2011-08-20 11:49:50 +02:00
Colin Leitner
a021ebf4c4
Added OPTIONS method
2011-08-20 11:48:31 +02:00
Sergey Lyubka
025b11b176
Fixed buffer overflow in put_dir()
2011-08-03 11:39:55 +02:00
valenok
27983c535d
All dates in headers must be in UTC
2011-07-26 00:39:05 +01:00
valenok
9be6774197
Breaking process_new_connection() loop when mg_stop() is called
2011-07-04 13:01:18 +01:00
valenok
99f5f11612
Fix SEGV in handle_proxy_request
2011-06-28 15:33:40 +01:00
valenok
a844115043
close_socket_gracefully(): set linger option to prevent port exhaustion
2011-06-24 08:31:37 +01:00
valenok
71b6a53617
spawn_process(): reading hashbang string correctly on Windows
2011-06-23 00:07:46 +01:00
valenok
5303e37702
Allow NULL passwords in mg_modify_passwords_file
2011-06-22 14:01:10 +01:00
valenok
ff28c04b60
Corrected errror message in set_ports_option()
2011-06-22 08:37:11 +01:00
valenok
a77519def3
Uninitializing SSL on mg_stop()
2011-06-22 08:35:08 +01:00
valenok
8942a4cdad
Ignoring SIGCHLD to let OS reap the zombies.
2011-06-22 00:45:08 +01:00
valenok
9e524a2fce
Changed backlog length, listen(20) -> listen(100)
2011-06-21 22:47:44 +01:00
valenok
5bbb6fbbd5
Added mg_send_file()
2011-06-19 17:45:52 +01:00
valenok
23a3cc6472
Added "Content-Length: 0" to the authorization reply to make it keep-alive friendly
2011-06-18 10:21:13 +01:00
valenok
377cece9c0
Better comments for TCP keep-alive change
2011-05-26 21:15:34 +01:00
valenok
abc230eb34
Set keep alive on TCP level
2011-05-26 21:12:44 +01:00
valenok
938407dc16
3.0 -> 3.1
2011-05-02 08:59:58 +01:00
valenok
d7cba57e17
Make source g++ friendly
2011-04-24 22:40:08 +01:00
Sergey Lyubka
cb601b7718
Fix potential leak in handle_directory_request()
2011-03-31 18:04:46 +02:00
Sergey Lyubka
6a43bd952f
Fix pthread_cond_wait() to prevent race
2011-03-31 17:59:23 +02:00
valenok
ec15f2da2b
Fixed assert() in mg_read()
2011-03-08 21:51:03 +00:00
valenok
3e48cebc13
MD5Update(): memset() call corrected
2011-03-07 17:34:40 +00:00
valenok
be20ced0a1
parse_url() fixed
2011-03-06 23:30:34 +00:00
valenok
2557884179
Added __SYMBIAN32__ conditionals
2011-03-06 22:48:31 +00:00
valenok
b489cb6c76
Bug in SSL defines fixed, thanks to mmeuli
2011-03-05 12:38:48 +00:00
valenok
4840457927
Passing request_info with user_data to MG_INIT_SSL
2011-03-05 09:01:38 +00:00
valenok
80d9fbcda4
Passing user_data into MG_INIT_SSL as 3rd parameter
2011-03-05 08:49:50 +00:00
valenok
fae26c1bfd
Style cleanup
2011-02-19 12:00:46 +00:00
valenok
29716fa22e
Changed API: function mg_modify_passwords_file(). Instead of passing context, a domain name is passed, thus making this function completely mongoose-agnostic.
2011-02-18 16:40:58 +00:00
valenok
3583e83a3f
Using volatile keyword in the context struct to prevent unwanted optimization. See http://code.google.com/p/mongoose/issues/detail?id=216
2011-02-15 16:13:38 +00:00
Arnout Vandecappelle (Essensium/Mind)
a57f2cf744
Do authentication before trying NEW_REQUEST callback.
2010-12-03 13:16:34 +01:00
Arnout Vandecappelle (Essensium/Mind)
a9b6eb1809
Fix for issue#209: support spaces, commas, quotes and other weirdness in Authorization header.
2010-12-03 12:48:56 +01:00
Arnout Vandecappelle (Essensium/Mind)
d9c05f9910
Partial fix for issue#209: don't crash when some Authorization fields are missing.
2010-12-02 17:48:08 +01:00
Sergey Lyubka
ac09360430
Accept * URI
2010-11-29 18:27:25 +01:00
Sergey Lyubka
9bda69f573
Fix issue 180 - make mg_read() handle PUT requests, too. Stop checking for request method in mg_read().
2010-11-29 17:56:26 +01:00
Arnout Vandecappelle (Essensium/Mind)
fb9493a090
Bugfix of Issue #180 : mg_read() should accept PUT requests.
2010-11-29 16:27:30 +01:00
Sergey Lyubka
0db96c5ba5
make it possible to set SSL_LIB and CRYPTO_LIB during build
2010-11-29 14:46:42 +01:00
Sergey Lyubka
e97762879d
reduced select() timeout from 1 second to 0.2 second to make mongoose snappier
2010-11-29 14:39:04 +01:00
Sergey Lyubka
db1c0806ef
Parsing auth header - fix issue 206, IE case
2010-11-29 14:28:52 +01:00
Sergey Lyubka
1de7fef760
fix blocked CGI read
2010-11-15 10:41:17 +01:00
valenok
da21192b10
squashed a warning
2010-11-03 07:46:59 +00:00
valenok
073890215d
RTEMS fixes: removed mman.h include, and introduced NO_POPEN conditional
2010-11-03 07:37:59 +00:00
Arnout Vandecappelle (Essensium/Mind)
bdb396cc5d
Bugfix of Issue #200 : Multiple calls to mg_read always return the same data.
...
The buffer must skip over consumed_content.
2010-11-02 11:14:43 +01:00
Matt Healy
c1e24ac7f9
Resolved various compile-time warnings when building code. (This is due to
...
requirements on some projects I work on, where warning levels must be kept
to a minimum.)
2010-10-30 15:49:12 -04:00
valenok
11951a57ff
API change: added void *user_data to mg_start(). Bumped version to 3.0
2010-10-26 23:37:44 +01:00
valenok
7034f49276
should_keep_alive(): using mg_strcasecmp() instead of strcmp() to compare header value
2010-10-05 07:08:51 +01:00
valenok
6240455779
2.11 -> 2.12
2010-10-05 07:06:53 +01:00
valenok
9390b00166
squash warning under win32
2010-09-26 22:27:41 +01:00
valenok
51b1f3a021
Under Linux, reap CGI zombies reliably
2010-09-26 22:20:20 +01:00
valenok
66ba1259f2
CGI script execution fixed for windows
2010-09-20 19:23:40 +01:00
valenok
7865ed7bad
SCRIPT_FILENAME should be relative to document root, and begin with slash.
2010-09-19 21:57:34 +01:00
valenok
1811240587
exporting correct SCRIPT_FILENAME for CGI
2010-09-19 13:00:49 +01:00
valenok
3e5d2bd3ac
extra check in mg_start(): options may be NULL
2010-09-18 04:20:10 +01:00
valenok
d475188a3d
protected free(ssl_mutexes) with ifndef NO_SSL
2010-09-14 11:16:30 +01:00
valenok
9b5de49437
free-ing allocated SSL mutexes
2010-09-12 22:44:02 +01:00
valenok
ea71faf71d
2.10 -> 2.11
2010-09-12 22:26:12 +01:00
valenok
2b732a8067
implemented pthread_cond_broadcast() better to avoid mg_stop() deadlock on Win32
2010-09-12 21:58:22 +01:00
valenok
bd152b0923
introduced max_request_size
2010-09-11 16:53:23 +01:00
valenok
3d43451b36
reporting error if request size is too big
2010-09-10 23:44:23 +01:00
valenok
d8c12e449d
refactored set_port_option
2010-09-09 13:46:05 +01:00
valenok
4c1451bab1
refactored SSL initialization. implemented mg_connect()
2010-09-08 22:53:25 +01:00
valenok
1ceafea1f9
SSL_CTX_use_certificate_chain_file() call fixed. using __cdecl for qsort callback. squashed warnings under msvc
2010-09-07 10:59:31 +01:00
valenok
149a553872
not setting SO_REUSEADDR on windows
2010-09-06 21:58:05 +01:00
valenok
236768b30c
2.9 -> 2.10
2010-09-06 21:46:07 +01:00
valenok
de5aff7f10
fixed check_acl() to return -1 for malformed ACL
2010-09-06 21:36:54 +01:00
valenok
28f3073873
added -DNO_SSL_DL option
2010-09-03 03:58:23 +01:00
valenok
0f89d437d5
added -ssl_chain_file option
2010-08-31 21:19:27 +01:00
valenok
5a0376488d
rearranged options list in alphabetical order
2010-08-31 21:10:19 +01:00
Sergey Lyubka
75b6717d8b
wrapped set_ssl_option call into NO_SSL conditional. Fixed test.
2010-08-31 11:58:45 +02:00
valenok
f105b74dc0
experimental keep-alive, options defaults
2010-08-31 08:01:14 +01:00
valenok
a0e202d828
fixed win32 build
2010-08-31 00:12:16 +01:00
valenok
64ca2965c0
disabled SSL handshake error messages
2010-08-30 23:41:17 +01:00
valenok
68dde1b7b1
error message in set_ssl_option() corrected
2010-08-30 17:56:43 +01:00
valenok
97f2155239
introduced short option names
2010-08-30 13:10:10 +01:00
valenok
bb21ffec12
moved document_root verification to standalone server (into main.c)
2010-08-30 12:54:46 +01:00
valenok
39c6d3ee08
corrected error log message in spawn_process()
2010-08-30 10:35:04 +01:00
valenok
6cf296515b
added debug trace in mg_start. restored stderr duping in spawn_process()
2010-08-29 23:19:53 +01:00
valenok
546bec333c
API change for mg_start: most binary compatible across releases.
2010-08-29 22:30:49 +01:00
valenok
e846212180
embedded mode: implement mg_read() properly. This brings straming support to Mongoose.
2010-08-28 00:31:06 +01:00
valenok
ee997ba7d4
put back dynamic SSL lib loading
2010-08-26 20:50:59 +01:00
valenok
4f716e2b9a
fixed win32 build
2010-08-26 00:55:03 +01:00
valenok
8d2bc8dd8a
squash MinGW warning
2010-08-23 21:46:28 +01:00
valenok
f4907bc0c2
introdused NO_SSL. Explicitely linking against SSL library.
2010-08-23 21:36:35 +01:00
valenok
cb71dc4a1e
integrated Michael Krelin fixes: no extra newline in error logs, no #ifndef NO_CGI for match_extension()
2010-08-23 20:48:40 +01:00
valenok
b6d53922d2
s/FILENAME_MAX/PATH_MAX/g, also allocating connections on heap
2010-08-23 19:58:45 +01:00
Sergey Lyubka
aca0512173
optimized DEBUG_TRACE(). Fixed thread sync on exit.
2010-08-23 17:42:25 +02:00
Sergey Lyubka
fcb57df105
creating all worker threads in mg_start().
2010-08-23 14:06:58 +02:00
valenok
e650941174
fixed bad http version handling
2010-08-23 07:26:03 +01:00
valenok
d87cd36beb
removed partial copyright - no relevant code. adopted CGI code to no post_data. Embedded mode is still todo. FALSE -> MG_FALSE.
2010-08-23 07:11:35 +01:00
valenok
4cf7851996
decreased thread idle time to 5 seconds. exiting worker thread if stop flag is raised.
2010-07-06 23:04:50 +01:00
valenok
9a2b2d75f1
adopted mongoose.c to Google style
2010-07-06 17:41:21 +01:00
valenok
88a224d808
fixed example. some more comments added
2010-07-05 19:37:53 +01:00
Sergey Lyubka
5425b94f39
introduced struct mg_config. Fixed Range response.
2010-06-25 17:23:17 +02:00
valenok
9a5f96e755
Win32 compilation fixed
2010-06-15 12:49:52 +03:00
migal
f9456c4d76
removed MAX_LISTENING_SOCKETS restriction
2010-06-05 16:30:50 +03:00
Sergey Lyubka
e8db81e33b
SSL error logging my Martin Lamb
2010-05-28 15:52:58 +01:00
mlamb
57157edc66
don't close the error log if we didn't open it.
2010-05-28 10:28:45 -04:00
mlamb
c511671e33
formatting
2010-05-27 17:36:55 -04:00
mlamb
22322f2851
Add ssl_cry() function to display error message plus any detailed error messages that OpenSSL might care to provide.
...
This can help to debug SSL communication issues.
Example output with a couple of problematic SSL client sessions (new log messages start with "-->" to indicate that they are providing additional detail to a previous log message):
Mongoose "2.9, $Rev: 517 $" started on port(s) "80,443s", serving directory "."
[1274991792] [error] [client 10.50.50.50] worker_thread: SSL handshake error
[1274991792] [error] [client 10.50.50.50] --> error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
[1274991882] [error] [client 10.50.50.50] worker_thread: SSL handshake error
[1274991882] [error] [client 10.50.50.50] --> error:1408A0C1:SSL routines:SSL3_GET_CLIENT_HELLO:no shared cipher
2010-05-27 15:44:59 -04:00
Sergey Lyubka
ddde5d9d1b
range support for PUT request by Yan Jabin
2010-05-21 11:51:49 +02:00
lsm
d94c3f8b64
moved linux-specific compilation #defines into mongoose.c. This way we make sure flags are picked up if Makefile is not used.
2010-05-08 14:06:35 +02:00
Sergey Lyubka
627a6dbb5a
mg_md5 made public
2010-05-05 00:39:36 +01:00
Sergey Lyubka
a69a2da39d
Initial import - converting from Subversion.
2010-05-03 21:46:42 +01:00