+ if(from->outcipher)
+ if(!EVP_EncryptInit_ex(from->outctx, from->outcipher, NULL, (unsigned char *)from->outkey, (unsigned char *)from->outkey + EVP_CIPHER_key_length(from->outcipher))) {
+ logger(LOG_ERR, "Error during initialisation of key from %s (%s): %s",
+ from->name, from->hostname, ERR_error_string(ERR_get_error(), NULL));
+ return true;
+ }
+
+ from->status.validkey = true;
+ from->sent_seqno = 0;
+
+ if(*address && *port) {
+ ifdebug(PROTOCOL) logger(LOG_DEBUG, "Using reflexive UDP address from %s: %s port %s", from->name, address, port);
+ sockaddr_t sa = str2sockaddr(address, port);
+ update_node_udp(from, &sa);
+ }
+
+ if(from->options & OPTION_PMTU_DISCOVERY && !from->mtuevent) {
+ send_mtu_probe(from);
+ }