5a9ccce558
Made library ecf compilable in scoop concurrency mode by default.
...
Except nino related projects that depends on EiffelThread.
2016-11-01 14:30:19 +01:00
193f22ebc8
Fixed wsf tests project.
...
Added ini config support to simple_file example.
2016-10-25 15:22:18 +02:00
5e79751522
Updated WGI_OUTPUT_STREAM.put_file_content .
2016-10-25 13:44:44 +02:00
ac908e4efd
Fixed expiration, and cache-control: max-age implementation.
...
Also use `FILE.date` instead of `FILE.change_date` (`change_date` is the date of the last status change, quite often same as creation date, while `date` is the last modification date).
2016-10-24 12:51:21 +02:00
885195dbaa
Added WSF_RESPONSE.put_file_content (f: FILE, a_offset: INTEGER; a_count: INTEGER) to allow potential future optimization.
2016-10-24 12:47:33 +02:00
53f4f64596
Added feature to manipulate easily the chain of filters.
2016-10-21 19:39:42 +02:00
c34f89df9b
Added connection header related functions.
...
- WSF_REQUEST.is_keep_alive_http_connection: BOOLEAN
- HTTP_HEADER_MODIFIER.put_connection_keep_alive
- HTTP_HEADER_MODIFIER.put_connection_close
In Standalone request handler code, better detection of Connection: keep-alive header.
2016-10-18 13:22:32 +02:00
Jocelyn Fiat
4a47a00747
Better all-safe.ecf file under wsf/connector .
2016-10-15 22:37:16 +02:00
Jocelyn Fiat
d45b90e52a
Fixed ecf to get them compiled.
2016-10-14 17:57:02 +02:00
b8aee435dd
Updated simple_ssl example to use directly the standalone connector,
...
and use the new WSF_STANDALONE_SERVICE_OPTIONS class.
Added WSF_STANDALONE_SERVICE to make it easy to use directly.
2016-10-14 15:13:27 +02:00
Jocelyn Fiat
a4d737d548
Be sure to use ecf custom variable "ssl_enabled" and not the variant "httpd_ssl_enabled" or else.
...
Include again the openssl include folder for EiffelStudio before 16.11, otherwise eif_openssl is not found.
2016-10-14 14:32:04 +02:00
Jocelyn Fiat
16f667af2c
Reverted a few ecf files from ecf version 1-16-0 to ecf version 1-15-0.
...
Added target "http_network_ssl" to test http_network with ssl support.
2016-10-14 14:00:03 +02:00
1161e541fa
Accept "yes" or "true" in wsf launcher option boolean values.
...
Set socket_error when network occurs in `read_to_managed_pointer_noexception`.
2016-10-14 13:10:44 +02:00
d4ec640ac8
Renamed many classes and feature to use "secure" term instead of "ssl". (note, the .ecf are still using the "ssl" terminologie).
...
Provided easy way to set secure settings for Standalone.
For wsf launcher boolean option accept "true" or "yes" for True boolean, anything else is False.
2016-10-14 11:52:48 +02:00
01a9d02586
Added websocket examples for the server and client.
2016-10-13 22:01:50 +02:00
1e4203111f
Use socket .._noexception functions in websocket networking.
2016-10-13 21:55:53 +02:00
b84f4838f5
Added new WSF_STANDALONE_SERVICE_OPTIONS, a descendant of WSF_SERVICE_LAUNCHER_OPTIONS specialized for standalone connectors.
2016-10-13 21:55:16 +02:00
8b43cb909a
Do not use put_readable_string_8_noexception, and just update put_string_8_noexception to accept READABLE_STRING_8.
2016-10-13 21:53:12 +02:00
897f64e4fe
Reuse http_network library.
...
Reintroduced HTTPD_STREAM_SOCKET for backward compatibility, and ease of usage.
Added websocket libraries (client, and protocol).
2016-10-13 16:25:11 +02:00
981942b2d6
Extracted network socket classes from httpd folder, and created a new library/network/http_network library.
...
Renamed HTTPD_STREAM_SOCKET as HTTP_STREAM_SOCKET.
Made http_client (net) library use the new http_network library.
2016-10-12 23:27:55 +02:00
c132d7734b
Moved httpd library from ewsgi/connectors/standalone/lib/httpd to httpd.
...
Reused the http_network library as well inside httpd library.
2016-10-12 22:54:21 +02:00
ef704790a8
Fixed the "wsf_tests" autocase suite, which was wrong for cookies, and other minor changes.
2016-10-12 11:21:27 +02:00
29590b1c0d
Fixed potential issue related to PATH_INFO, and percent_encoded_path_info computing , when script name is in different path.
2016-10-12 11:19:23 +02:00
ed959042d7
Fixed issue with input using "Transfer-Encoding: chunked".
2016-10-12 11:12:37 +02:00
1170417e54
Fixed regression with persistent connection, be sure to keep the remote_info data for all successive requests within a same persistent connection.
2016-10-11 17:34:07 +02:00
f12158e535
Use the ..._noexception network features in the WGI standalone input and output classes.
2016-10-11 10:57:05 +02:00
080881368a
Also check for SOCKET.was_error when accessing the socket data.
2016-10-11 10:29:38 +02:00
Jocelyn Fiat
3e935c7e33
Use `was_error' to get expected behavior on Linux.
2016-10-10 22:27:45 +02:00
Jocelyn Fiat
ad2bb0d1a7
Fixed C compilation on non Windows platform for EiffelStudio until 16.05 .
...
(the required c function are coming with EiffelNet from EiffelStudio 16.11 ).
2016-10-10 22:17:41 +02:00
7a546622bc
Updated deprecated EiffelWeb nino to make it compilable with upcoming EiffelStudio 16.11.
...
Updated various projects to make them up-to-date and compilable with this latest EiffelWeb.
2016-10-10 21:40:15 +02:00
aed7461faf
Improved networking implementation for httpd server and sockets.
...
Use new EiffelNet routines that do not raise exception on error.
Made compilable with 16.05 and dev-and-upcoming release 16.11.
Fixed various minor issues related to base_url, and added comments.
2016-10-08 01:10:16 +02:00
56819d6793
Replace Nino by Standalone whenever it is relevant.
2016-10-08 01:02:12 +02:00
b4fd04ad9f
Updated has_incoming_data comment.
2016-10-05 16:19:48 +02:00
71a98f3c28
Make EiffelWeb standalone easier to debug by using in some locations error instead of exception for network error.
...
- Added C external to use C `recv` feature with error (as opposed to have exception raised on network error).
2016-10-05 10:45:57 +02:00
ed22be2551
Commented the execute_bad_request, since it is not ready and will trigger error most of the time.
2016-10-05 00:04:21 +02:00
77085364ee
Improve socket management for EiffelWeb standalone connector.
2016-10-04 18:49:48 +02:00
0217c6d3f4
First attempt to response with bad request message when bad request is detected.
2016-10-04 13:00:38 +02:00
55fec2423c
Added ssl test case for standalone wsf connector.
2016-10-04 12:59:56 +02:00
612ff243c1
Also display SSL information when verbose is enabled for EiffelWeb standalone connector.
2016-10-02 20:05:44 +02:00
21407f8dcf
Fixed SSL support on the httpd component, and also on the EiffelWeb standalone connector.
...
- the standalone connector support for SSL, is using certicate files for now (no in-memory support).
- to enable ssl support, set ecf variable `httpd_ssl_enabled=true`.
- added the `simple_ssl` example to demonstrate how to have standalone ssl server.
(be careful when using EiffelNet SSL and the http_client library, disable the libcurl
via ecf variable `libcurl_http_client_disabled=true` )
Added support for recv timeout to the EiffelWeb standalone connector.
- made EiffelWeb compilable with 16.05 and upcoming 16.11.
Done via ecfs condition on version to accept EiffelNet with recv_timeout (from 16.11), and without (until 16.05).
- adding recv timeout prevents server to hang for ever if a client wait too long to send data.
Updated various comments.
2016-09-27 16:11:47 +02:00
356eb143ea
Fixed the non void-safe ecf for wsf_proxy.
2016-09-26 17:42:49 +02:00
f010da04e9
Merge branch 'reverse_proxy'
2016-09-19 22:19:21 +02:00
5029049ef0
Replaced host+port by uri ( http://remotemachine:port/path ).
...
Added support for SSL (https).
2016-08-08 12:30:28 +02:00
80254b2278
When possible keep ecf location relative within the same EiffelWeb directory structure.
2016-08-06 10:07:42 +02:00
210fae5000
First step towards SSL support.
2016-08-06 10:04:45 +02:00
9cc9b95190
Added a simple reverse proxy handler.
...
- For now, it does not support SSL connection on the target yet.
- No external config file support, this is all about coding.
2016-08-05 11:38:35 +02:00
8b172b5d33
Revisited WSF_REQUEST.read_input_data* functions:
...
- read_input_data_into_file now accepts a IO_MEDIUM argument instead of just FILE.
- cleaned the implementation, and make sure that eventual `raw_input_data` is containing only the raw input data.
2016-08-05 11:32:14 +02:00
4283662f43
Removed unwanted .ecf file.
2016-06-22 10:55:41 +02:00
193cc3cbde
Renamed WGI_STANDALONE_CONNECTOR_ACCESS as WGI_STANDALONE_CONNECTOR_EXPORTER.
...
Isolate the websocket implementation in descendant of {WEB_SOCKET_EVENT_I}.
Added very simple echo websocket example.
+ code cleaning.
2016-06-22 10:46:15 +02:00
b49e841ac7
Added WSF standalone_websocket connector, that provides websocket on top of standalone connector.
2016-06-21 23:37:48 +02:00