- yaz_log (LOG_WARN, "%s: Address format: ('tcp'|'ssl')':'<address>",
- me);
- return;
- }
- if (!strcmp(mode, "tcp"))
- type = tcpip_type;
- else if (!strcmp(mode, "ssl"))
- {
-#if HAVE_OPENSSL_SSL_H
- type = ssl_type;
-#else
- yaz_log (LOG_WARN, "SSL Transport not allowed by configuration.");
- return;
-#endif
- }
- else
- {
- yaz_log (LOG_WARN, "You must specify either 'ssl:' or 'tcp:'");
- return;
- }
- yaz_log(LOG_LOG, "Adding %s %s listener on %s",
- control_block.dynamic ? "dynamic" :
- (control_block.threads ? "threaded" : "static"),
- what == PROTO_SR ? "SR" : "Z3950", where);
- if (!(l = cs_create(type, 0, what)))
- {
- yaz_log(LOG_FATAL|LOG_ERRNO, "Failed to create listener");
- return;
- }
- ap = cs_straddr (l, addr);
- if (!ap)
- {
- fprintf(stderr, "Address resolution failed.\n");
- cs_close (l);