aboutsummaryrefslogtreecommitdiff
path: root/lib/hostip.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2004-02-23 08:35:57 +0000
committerDaniel Stenberg <daniel@haxx.se>2004-02-23 08:35:57 +0000
commit35fd1365ae7f387a9d0d4cff7f42a7a17f7f5466 (patch)
treec583a6d95817baa689b226e82beaca805662aa14 /lib/hostip.c
parentf493081004b3ba2477f91f028ac7e37207ee2e4e (diff)
simplied how create_hostcache_id() is used, and also its function somewhat
cleared up some ssize_t/size_t mixups
Diffstat (limited to 'lib/hostip.c')
-rw-r--r--lib/hostip.c26
1 files changed, 9 insertions, 17 deletions
diff --git a/lib/hostip.c b/lib/hostip.c
index d664d6da2..d02b30785 100644
--- a/lib/hostip.c
+++ b/lib/hostip.c
@@ -156,30 +156,24 @@ static int _num_chars(int i)
/* Create a hostcache id */
static char *
-create_hostcache_id(char *server, int port, ssize_t *entry_len)
+create_hostcache_id(char *server, int port, size_t *entry_len)
{
char *id = NULL;
/* Get the length of the new entry id */
- *entry_len = *entry_len + /* Hostname length */
- 1 + /* ':' seperator */
- _num_chars(port); /* number of characters the port will take up */
+ *entry_len = strlen(server) + /* Hostname length */
+ 1 + /* ':' seperator */
+ _num_chars(port); /* number of characters the port will take up */
/* Allocate the new entry id */
- id = malloc(*entry_len + 1);
+ id = malloc(*entry_len + 1); /* 1 extra for the zero terminator */
if (!id)
return NULL;
/* Create the new entry */
- /* If sprintf() doesn't return the entry length, that signals failure */
- if (sprintf(id, "%s:%d", server, port) != *entry_len) {
- /* Free the allocated id, set length to zero and return NULL */
- *entry_len = 0;
- free(id);
- return NULL;
- }
+ sprintf(id, "%s:%d", server, port);
- return id;
+ return id; /* return pointer to the string */
}
struct hostcache_prune_data {
@@ -256,12 +250,11 @@ cache_resolv_response(struct SessionHandle *data,
int port)
{
char *entry_id;
- ssize_t entry_len;
+ size_t entry_len;
struct Curl_dns_entry *dns;
time_t now;
/* Create an entry id, based upon the hostname and port */
- entry_len = strlen(hostname);
entry_id = create_hostcache_id(hostname, port, &entry_len);
/* If we can't create the entry id, fail */
if (!entry_id)
@@ -315,7 +308,7 @@ int Curl_resolv(struct connectdata *conn,
{
char *entry_id = NULL;
struct Curl_dns_entry *dns = NULL;
- ssize_t entry_len;
+ size_t entry_len;
int wait;
struct SessionHandle *data = conn->data;
CURLcode result;
@@ -335,7 +328,6 @@ int Curl_resolv(struct connectdata *conn,
#endif
/* Create an entry id, based upon the hostname and port */
- entry_len = strlen(hostname);
entry_id = create_hostcache_id(hostname, port, &entry_len);
/* If we can't create the entry id, fail */
if (!entry_id)