Lines Matching defs:serverinfo
542 static int serverinfo_find_extension(const unsigned char *serverinfo,
552 if (serverinfo == NULL || serverinfo_length == 0)
555 if (!PACKET_buf_init(&pkt, serverinfo, serverinfo_length))
562 /* end of serverinfo */
609 const unsigned char *serverinfo = NULL;
616 /* Is there serverinfo data for the chosen server cert? */
617 if ((ssl_get_server_cert_serverinfo(s, &serverinfo,
619 /* Find the relevant extension from the serverinfo */
620 int retval = serverinfo_find_extension(serverinfo, serverinfo_length,
630 return 0; /* No serverinfo data found, don't send
643 * With a NULL context, this function just checks that the serverinfo data
648 const unsigned char *serverinfo,
653 if (serverinfo == NULL || serverinfo_length == 0)
659 if (!PACKET_buf_init(&pkt, serverinfo, serverinfo_length))
682 * new API. Therefore, if we have V1 serverinfo we use the old API. We
683 * also use the old API even if we have V2 serverinfo but the context
719 unsigned char *serverinfo)
725 serverinfo[0] = 0;
726 serverinfo[1] = 0;
727 serverinfo[2] = (SYNTHV1CONTEXT >> 8) & 0xff;
728 serverinfo[3] = SYNTHV1CONTEXT & 0xff;
731 memcpy(serverinfo + contextoff, extension, extension_length);
735 const unsigned char *serverinfo,
740 if (ctx == NULL || serverinfo == NULL || serverinfo_length == 0) {
746 * Convert serverinfo version v1 to v2 and call yourself recursively
747 * over the converted serverinfo.
760 extension_append(SSL_SERVERINFOV1, serverinfo, serverinfo_length, sinfo);
768 if (!serverinfo_process_buffer(version, serverinfo, serverinfo_length,
777 new_serverinfo = OPENSSL_realloc(ctx->cert->key->serverinfo,
783 ctx->cert->key->serverinfo = new_serverinfo;
784 memcpy(ctx->cert->key->serverinfo, serverinfo, serverinfo_length);
788 * Now that the serverinfo is validated and stored, go ahead and
791 if (!serverinfo_process_buffer(version, serverinfo, serverinfo_length,
799 int SSL_CTX_use_serverinfo(SSL_CTX *ctx, const unsigned char *serverinfo,
802 return SSL_CTX_use_serverinfo_ex(ctx, SSL_SERVERINFOV1, serverinfo,
808 unsigned char *serverinfo = NULL;
891 /* Append the decoded extension to the serverinfo buffer */
893 tmp = OPENSSL_realloc(serverinfo, serverinfo_length + append_length);
898 serverinfo = tmp;
900 serverinfo + serverinfo_length);
911 ret = SSL_CTX_use_serverinfo_ex(ctx, SSL_SERVERINFOV2, serverinfo,
914 /* SSL_CTX_use_serverinfo makes a local copy of the serverinfo. */
918 OPENSSL_free(serverinfo);