+ for (int i = 0; i < ARRAY_SIZE(sa_connect); i++) {
+ if (GET_SS_FAMILY(&sa_bind[i]) == AF_UNSPEC) {
+ if (GET_SS_FAMILY(&sa_connect[i]) == GET_SS_FAMILY(&ServerInfo.bind4))
+ sa_bind[i] = ServerInfo.bind4;
+ if (GET_SS_FAMILY(&sa_connect[i]) == GET_SS_FAMILY(&ServerInfo.bind6))
+ sa_bind[i] = ServerInfo.bind6;
+ }
+ }
+
+#ifdef HAVE_LIBSCTP
+ if (ServerConfSCTP(server_p)) {
+ rb_connect_sctp(client_p->localClient->F,
+ sa_connect, ARRAY_SIZE(sa_connect), sa_bind, ARRAY_SIZE(sa_bind),
+ ServerConfSSL(server_p) ? serv_connect_ssl_callback : serv_connect_callback,
+ client_p, ConfigFileEntry.connect_timeout);
+ } else {
+#else