comparison src/event/ngx_event_openssl.c @ 3154:823f72db46c0

$ssl_session_id
author Igor Sysoev <igor@sysoev.ru>
date Thu, 24 Sep 2009 14:45:28 +0000
parents bf0c7e58e016
children e720c4a68ee0
comparison
equal deleted inserted replaced
3153:90d6b878481f 3154:823f72db46c0
1927 return NGX_OK; 1927 return NGX_OK;
1928 } 1928 }
1929 1929
1930 1930
1931 ngx_int_t 1931 ngx_int_t
1932 ngx_ssl_get_session_id(ngx_connection_t *c, ngx_pool_t *pool, ngx_str_t *s)
1933 {
1934 int len;
1935 u_char *p, *buf;
1936 SSL_SESSION *sess;
1937
1938 sess = SSL_get0_session(c->ssl->connection);
1939
1940 len = i2d_SSL_SESSION(sess, NULL);
1941
1942 buf = ngx_alloc(len, c->log);
1943 if (buf == NULL) {
1944 return NGX_ERROR;
1945 }
1946
1947 s->len = 2 * len;
1948 s->data = ngx_pnalloc(pool, 2 * len);
1949 if (s->data == NULL) {
1950 ngx_free(p);
1951 return NGX_ERROR;
1952 }
1953
1954 p = buf;
1955 i2d_SSL_SESSION(sess, &p);
1956
1957 ngx_hex_dump(s->data, buf, len);
1958
1959 ngx_free(buf);
1960
1961 return NGX_OK;
1962 }
1963
1964
1965 ngx_int_t
1932 ngx_ssl_get_raw_certificate(ngx_connection_t *c, ngx_pool_t *pool, ngx_str_t *s) 1966 ngx_ssl_get_raw_certificate(ngx_connection_t *c, ngx_pool_t *pool, ngx_str_t *s)
1933 { 1967 {
1934 size_t len; 1968 size_t len;
1935 BIO *bio; 1969 BIO *bio;
1936 X509 *cert; 1970 X509 *cert;