|
From: | shishi-commit |
Subject: | Use asprintf. [...] |
Date: | Thu, 11 Dec 2003 02:14:14 +0100 |
Commit from jas | 2003-12-11 02:14 CET |
Use asprintf. Send 4 length bytes for TCP. Fix.
Module | File name | Revision | |||
---|---|---|---|---|---|
shishi | src/shishid.c | 1.60 | >>> | 1.61 |
shishi/src/shishid.c 1.60 >>> 1.61 |
---|
Line 132 |
/* Get error. */ #include "error.h" |
+ /* Get asprintf. */ + #include "vasprintf.h" + |
/* Get program_name, etc. */ #include "progname.h" |
Line 170 |
int port; int type; int sockfd; |
- char buf[BUFSIZ]; |
+ char buf[BUFSIZ]; /* XXX */ |
size_t bufpos; }; |
Line 292 |
rc = shishi_as (handle, &as); if (rc != SHISHI_OK) { |
- syslog (LOG_ERR, "Incoming request failed: Cannot create AS: %s\n", - shishi_strerror (rc)); - /* XXX hard coded KRB-ERROR? */ - *out = strdup ("foo"); - *outlen = strlen (*out); |
+ syslog (LOG_ERR, "Cannot create AS: %s\n", shishi_strerror (rc)); |
return rc; } |
Line 314 |
rc = shishi_as_rep_der (as, out, outlen); if (rc != SHISHI_OK) { |
- syslog (LOG_ERR, - "Incoming request failed: Cannot DER encode reply: %s\n", - shishi_strerror (rc)); - /* XXX hard coded KRB-ERROR? */ - *out = strdup ("aaaaaa"); - *outlen = strlen (*out); |
+ syslog (LOG_ERR, "Cannot DER encode reply: %s\n", shishi_strerror (rc)); |
return rc; } |
Line 547 |
switch (shishi_asn1_msgtype (handle, node)) { case SHISHI_MSGTYPE_AS_REQ: |
+ puts ("Processing AS-REQ..."); |
rc = asreq (node, out, outlen); break; case SHISHI_MSGTYPE_TGS_REQ: |
+ puts ("Processing TGS-REQ..."); |
rc = tgsreq (node, out, outlen); break; |
Line 565 |
if (rc != SHISHI_OK) return rc; |
+ rc = shishi_krberror_set_realm (handle, krberr, "unknown"); + if (rc != SHISHI_OK) + return rc; + |
rc = shishi_krberror_der (handle, krberr, out, outlen); if (rc != SHISHI_OK) return rc; |
Line 731 |
ls->sockfd = accept (listenspec[i].sockfd, &ls->addr, &length); sin = (struct sockaddr_in *) &ls->addr; str = inet_ntoa (sin->sin_addr); |
- ls->str = xmalloc (strlen (listenspec[i].str) + - strlen (" peer ") + strlen (str) + 1); - sprintf (ls->str, "%s peer %s", listenspec[i].str, - str); |
+ asprintf (&ls->str, "%s peer %s", listenspec[i].str, str); |
puts (ls->str); } else |
Line 855 |
if (p && plen > 0) { |
+ if (listenspec[i].type == SOCK_STREAM) + { + uint32_t len = htonl (plen) + 4; + do + sent_bytes = sendto (ls->sockfd, &len, 4, + 0, &addr, length); + while (sent_bytes == -1 && errno == EAGAIN); + } + |
do sent_bytes = sendto (ls->sockfd, p, plen, 0, &addr, length); |
[Prev in Thread] | Current Thread | [Next in Thread] |