Commit Graph

2222 Commits

Author SHA1 Message Date
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