Delegate tls_t.get_{peer,server}_id to handshake layer
[strongswan.git] / src / libtls / tls.c
index 85a05a0..6d33d84 100644 (file)
@@ -107,16 +107,6 @@ struct private_tls_t {
        bool is_server;
 
        /**
-        * Server identity
-        */
-       identification_t *server;
-
-       /**
-        * Peer identity
-        */
-       identification_t *peer;
-
-       /**
         * Negotiated TLS version
         */
        tls_version_t version;
@@ -362,13 +352,13 @@ METHOD(tls_t, is_server, bool,
 METHOD(tls_t, get_server_id, identification_t*,
        private_tls_t *this)
 {
-       return this->server;
+       return this->handshake->get_server_id(this->handshake);
 }
 
 METHOD(tls_t, get_peer_id, identification_t*,
        private_tls_t *this)
 {
-       return this->peer;
+       return this->handshake->get_peer_id(this->handshake);
 }
 
 METHOD(tls_t, get_version, tls_version_t,
@@ -433,8 +423,6 @@ METHOD(tls_t, destroy, void,
        this->fragmentation->destroy(this->fragmentation);
        this->crypto->destroy(this->crypto);
        this->handshake->destroy(this->handshake);
-       DESTROY_IF(this->peer);
-       this->server->destroy(this->server);
        DESTROY_IF(this->application);
        this->alert->destroy(this->alert);
 
@@ -480,8 +468,6 @@ tls_t *tls_create(bool is_server, identification_t *server,
                },
                .is_server = is_server,
                .version = TLS_1_2,
-               .server = server->clone(server),
-               .peer = peer ? peer->clone(peer) : NULL,
                .application = application,
                .purpose = purpose,
        );
@@ -491,12 +477,12 @@ tls_t *tls_create(bool is_server, identification_t *server,
        if (is_server)
        {
                this->handshake = &tls_server_create(&this->public, this->crypto,
-                                                       this->alert, this->server, this->peer)->handshake;
+                                                                               this->alert, server, peer)->handshake;
        }
        else
        {
                this->handshake = &tls_peer_create(&this->public, this->crypto,
-                                                       this->alert, this->peer, this->server)->handshake;
+                                                                               this->alert, peer, server)->handshake;
        }
        this->fragmentation = tls_fragmentation_create(this->handshake, this->alert,
                                                                                                   this->application);