bzikarsky/gelf-php — pull request #24 by bzikarsky (2014-10-19 14:49:51+00:00)
Title: SSL support for HTTP transport

### Issue

The current HTTP transport implementation (see #6, #19) lacks support for SSL/TLS. Some real basic ideas can be taken from the old #6-implementation branch in https://github.com/bzikarsky/gelf-php/blob/issues/6-http-transport/src/Gelf/Transport/HttpTransport.php

/cc @steffkes

--

### Tasks

- [ ] Extend `StreamSocketClient` with support for stream-context + Tests
- [ ] Abstraction SSL-options (`class `Gelf\Transport\SslOptions`), [possibly relevant options] (http://php.net/manual/context.ssl.php) are:
- `verify_peer` - default to `true`
- `allow_self_signed` - default to `false`
- `cafile` - lots of people with a custom CA...we also need this for testing
- `ciphers` - Allows us to disable certain ciphers, such as SSLv3 (...Poodle-Attack)
- [ ] Extend HttpTransport with a SslOptions parameter, when NULL (default) is passed, no SSL is used
- [ ] Enable SNI (`SNI_enabled` and `SNI_server_name`) when available (OpenSSL 0.9.8j+)
- [ ] Enable `CN_match` on Hostname