diff options
| author | Yossi Gottlieb <yossigo@gmail.com> | 2020-05-22 14:10:08 +0300 | 
|---|---|---|
| committer | Yossi Gottlieb <yossigo@gmail.com> | 2020-05-24 23:37:47 +0300 | 
| commit | 190bca88d0635f1e53d9e39fc69f4f21b67a1baf (patch) | |
| tree | fba00c2e786aaecee15d6169c8ba7353a2726320 /examples | |
| parent | 8e0264cfd6889b73c241b60736fe96ba1322ee6e (diff) | |
| download | hiredict-190bca88d0635f1e53d9e39fc69f4f21b67a1baf.tar.xz | |
New SSL API to replace redisSecureConnection().
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/example-libevent-ssl.c | 16 | ||||
| -rw-r--r-- | examples/example-ssl.c | 14 | 
2 files changed, 28 insertions, 2 deletions
| diff --git a/examples/example-libevent-ssl.c b/examples/example-libevent-ssl.c index 1021113..aac5770 100644 --- a/examples/example-libevent-ssl.c +++ b/examples/example-libevent-ssl.c @@ -52,13 +52,25 @@ int main (int argc, char **argv) {      const char *certKey = argv[5];      const char *caCert = argc > 5 ? argv[6] : NULL; +    redisSSLContext *ssl; +    redisSSLContextError ssl_error; + +    redisInitOpenSSL(); + +    ssl = redisCreateSSLContext(caCert, NULL, +            cert, certKey, NULL, &ssl_error); +    if (!ssl) { +        printf("Error: %s\n", redisSSLContextGetError(ssl_error)); +        return 1; +    } +      redisAsyncContext *c = redisAsyncConnect(hostname, port);      if (c->err) {          /* Let *c leak for now... */          printf("Error: %s\n", c->errstr);          return 1;      } -    if (redisSecureConnection(&c->c, caCert, cert, certKey, "sni") != REDIS_OK) { +    if (redisInitiateSSLWithContext(&c->c, ssl) != REDIS_OK) {          printf("SSL Error!\n");          exit(1);      } @@ -69,5 +81,7 @@ int main (int argc, char **argv) {      redisAsyncCommand(c, NULL, NULL, "SET key %b", value, nvalue);      redisAsyncCommand(c, getCallback, (char*)"end-1", "GET key");      event_base_dispatch(base); + +    redisFreeSSLContext(ssl);      return 0;  } diff --git a/examples/example-ssl.c b/examples/example-ssl.c index 81f4648..c676ed8 100644 --- a/examples/example-ssl.c +++ b/examples/example-ssl.c @@ -7,6 +7,8 @@  int main(int argc, char **argv) {      unsigned int j; +    redisSSLContext *ssl; +    redisSSLContextError ssl_error;      redisContext *c;      redisReply *reply;      if (argc < 4) { @@ -19,6 +21,14 @@ int main(int argc, char **argv) {      const char *key = argv[4];      const char *ca = argc > 4 ? argv[5] : NULL; +    redisInitOpenSSL(); +    ssl = redisCreateSSLContext(ca, NULL, cert, key, NULL, &ssl_error); +    if (!ssl) { +        printf("SSL Context error: %s\n", +                redisSSLContextGetError(ssl_error)); +        exit(1); +    } +      struct timeval tv = { 1, 500000 }; // 1.5 seconds      redisOptions options = {0};      REDIS_OPTIONS_SET_TCP(&options, hostname, port); @@ -35,7 +45,7 @@ int main(int argc, char **argv) {          exit(1);      } -    if (redisSecureConnection(c, ca, cert, key, "sni") != REDIS_OK) { +    if (redisInitiateSSLWithContext(c, ssl) != REDIS_OK) {          printf("Couldn't initialize SSL!\n");          printf("Error: %s\n", c->errstr);          redisFree(c); @@ -93,5 +103,7 @@ int main(int argc, char **argv) {      /* Disconnects and frees the context */      redisFree(c); +    redisFreeSSLContext(ssl); +      return 0;  } | 
