]> git.ipfire.org Git - thirdparty/apache/httpd.git/commit
mod_ssl: Redesign NPN (Next Protocol Negotiation) API to avoid use of
authorJoe Orton <jorton@apache.org>
Thu, 30 May 2013 07:19:07 +0000 (07:19 +0000)
committerJoe Orton <jorton@apache.org>
Thu, 30 May 2013 07:19:07 +0000 (07:19 +0000)
commitafa9bc99edf96a8ff3a81786cc4ef52a9f3cf310
tree4f7061df23abd88619e92b3dd285d8bb15ffd698
parent03489bb96e1484c27d28e56d280f4e9eac5d6722
mod_ssl: Redesign NPN (Next Protocol Negotiation) API to avoid use of
hooks API and inter-module hard linkage:

* modules/ssl/mod_ssl.h: Remove NPN hooks, add "modssl_register_npn"
  optional function and callback function type declarations for
  ssl_npn_advertise_protos, ssl_npn_proto_negotiated.

* modules/ssl/mod_ssl.c: Drop hooks.
  (modssl_register_npn): New optional function implementation.
  (ssl_register_hooks): Register it.

* modules/ssl/ssl_private.h (SSLConnRec): Add npn_advertfns,
  npn_negofns array fields.

* modules/ssl/ssl_engine_kernel.c (ssl_callback_AdvertiseNextProtos):
  Replace use of hook API with array iteration.

* modules/ssl/ssl_engine_io.c (ssl_io_filter_input): Likewise.

Reviewed by: Matthew Steele <mdsteele google.com>

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1487772 13f79535-47bb-0310-9956-ffa450edef68
modules/ssl/mod_ssl.c
modules/ssl/mod_ssl.h
modules/ssl/ssl_engine_io.c
modules/ssl/ssl_engine_kernel.c
modules/ssl/ssl_private.h