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
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
80254b2278
When possible keep ecf location relative within the same EiffelWeb directory structure.
2016-08-06 10:07:42 +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
8ba74e1c90
Log when a persistent connection is reused.
...
Use anchor type on `{WGI_STANDALONE_CONNECTOR}.configuration` and `{WSF_STANDALONE_SERVICE_LAUNCHER}.connector`.
Add access to the socket of standalone input stream from `{WSF_STANDALONE_CONNECTOR_ACCESS}`.
Removed a useless redefination in `WSF_EXECUTION`.
2016-06-21 23:36:22 +02:00
0cecb9594c
Fixed signature of {HTTPD_CONFIGURATION_I}.set_ca_key .
2016-06-16 10:37:26 +02:00
e384a6d6ed
Make it easier to reuse the http network classes.
...
This is to make it easier for websocket solution to reuse httpd implementation.
2016-06-16 10:23:30 +02:00
71a5c086a5
Moved httpd from src to lib, under standalone connector.
2016-06-15 18:04:00 +02:00
dfa60bf8f5
Prepared httpd_stream to be useable for client too.
...
Fixed obsolete tests/dev compilation (mainly to avoid wrong failure reports).
added package.iron files.
2016-06-15 17:56:22 +02:00
113aa69efc
Added advanced settings for standalone connector
...
- max_concurrent_connections=100
- keep_alive_timeout=15
- max_tcp_clients=100
- socket_timeout=300
- max_keep_alive_requests=300
And then can be set via the options as well, and via .ini file.
Also improved the verbose console output system.
2016-06-15 09:19:23 +02:00
af5fc75743
Using passive regions.
...
Improve connector options mainly for standalone connector.
Updated "simple" example to return a timestamp.
2016-06-14 16:01:37 +02:00
Jocelyn Fiat
63be2c278c
Fixed bad usage of {SOCKET}.socket_ok that resulted in bad behavior on linux.
2016-05-31 22:19:52 +02:00
e9afc9ad17
Updated package.iron files.
2016-02-02 09:57:03 +01:00
1a4db1d7c6
Eiffel code and ECFs update to support new agent notations.
...
Removed contrib/library/.../json library.
2016-01-18 16:41:10 +01:00
166d0839b7
Fixed end_of_input by using SOCKET.readable.
2015-12-28 23:45:04 +01:00
jvelilla
1f1e2abbda
Removed support for SSLv3
2015-08-26 11:56:24 -03:00
6c51590369
Updated installation location of openid and http_authorization in ISE package.
...
Added iron package file for ewsgi.
2015-08-24 16:12:25 +02:00
31557cfc33
Fixed WGI_HTTPD_REQUEST_HANDLER.process_rescue
...
Fixed WGI_STANDALONE_OUTPUT_STREAM.is_available
Added WGI_STANDALONE_RESPONSE_STREAM.is_persistent_connection_supported
2015-07-02 10:50:41 +02:00
412534d0be
Fixed compilation of all*-safe.ecf files.
...
Corrected a few comments.
2015-07-01 21:43:54 +02:00
903f925a79
Changed the way SSL is supported with standalone connector (httpd lib).
...
Now by default, SSL is not supported,
and if an application wants the SSL support,
the related .ecf has to set custom variable "httpd_ssl_enabled" to "true"
2015-06-17 17:22:59 +02:00
c0d5b7c968
Added make_from_execution procedure to ease implementing various use cases.
2015-06-16 15:02:17 +02:00
7d089a88c2
Made compilable without SSL enabled
...
(i.e when variable named "httpd_ssl_disabled" is set to "true")
2015-06-11 10:08:44 +02:00
b790c7fd21
cosmetic, cleaning.
2015-06-10 10:59:24 +02:00
9424b1e369
Merge branch 'master' into v1
2015-06-08 10:10:51 +02:00
64463df552
Fixed various compilation error or warning.
2015-06-05 12:17:53 +02:00
dd5c89e31c
Fixed compilation of SSL_TCP_STREAM_SOCKET with recent do_accept changes.
2015-05-07 10:44:38 +02:00
fffa763d05
Updated a few comments.
2015-05-06 22:37:55 +02:00
019393fdb1
Fixed typo.
2015-05-06 22:17:35 +02:00
da8028f8b3
Fixed a typo.
2015-05-06 22:17:33 +02:00