12 reporter(char *fmt, ...)
19 vsnprint(buf, sizeof buf, fmt, ap);
20 syslog(0, logfile, "%s tls reports %s", remotesys, buf);
22 fprint(2, "%s: %s tls reports ", argv0, remotesys);
33 fprint(2, "usage: tlssrv -c cert [-D] [-l logfile] [-r remotesys] [cmd args...]\n");
34 fprint(2, " after auth/secretpem key.pem > /mnt/factotum/ctl\n");
39 main(int argc, char *argv[])
51 cert = EARGF(usage());
54 logfile = EARGF(usage());
57 remotesys = EARGF(usage());
64 sysfatal("no certificate specified");
65 conn = (TLSconn*)mallocz(sizeof *conn, 1);
67 sysfatal("out of memory");
68 conn->chain = readcertchain(cert);
69 if(conn->chain == nil)
70 sysfatal("can't read certificate %s", cert);
71 conn->cert = conn->chain->pem;
72 conn->certlen = conn->chain->pemlen;
73 conn->chain = conn->chain->next;
75 conn->trace = reporter;
77 fd = tlsServer(1, conn);
79 reporter("failed: %r");
92 reporter("can't exec %s: %r", *argv);