strlcat -> rb_strlcat
This commit is contained in:
parent
f427c8b00d
commit
1f9de103c3
14 changed files with 29 additions and 95 deletions
|
@ -102,7 +102,7 @@ do_host_cloak(const char *inbuf, char *outbuf, int ipmask)
|
||||||
/* try to avoid truncation -- jilles */
|
/* try to avoid truncation -- jilles */
|
||||||
while (len1 + strlen(rest) >= HOSTLEN && (next = strchr(rest + 1, '.')) != NULL)
|
while (len1 + strlen(rest) >= HOSTLEN && (next = strchr(rest + 1, '.')) != NULL)
|
||||||
rest = next;
|
rest = next;
|
||||||
strlcat(outbuf, rest, HOSTLEN);
|
rb_strlcat(outbuf, rest, HOSTLEN);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
rb_snprintf(outbuf, HOSTLEN, "%X%X.%s",
|
rb_snprintf(outbuf, HOSTLEN, "%X%X.%s",
|
||||||
|
|
|
@ -71,8 +71,8 @@ char *reconstruct_parv(int parc, const char *parv[])
|
||||||
rb_strlcpy(tmpbuf, parv[0], BUFSIZE);
|
rb_strlcpy(tmpbuf, parv[0], BUFSIZE);
|
||||||
for (i = 1; i < parc; i++)
|
for (i = 1; i < parc; i++)
|
||||||
{
|
{
|
||||||
strlcat(tmpbuf, " ", BUFSIZE);
|
rb_strlcat(tmpbuf, " ", BUFSIZE);
|
||||||
strlcat(tmpbuf, parv[i], BUFSIZE);
|
rb_strlcat(tmpbuf, parv[i], BUFSIZE);
|
||||||
}
|
}
|
||||||
return tmpbuf;
|
return tmpbuf;
|
||||||
}
|
}
|
||||||
|
|
|
@ -105,8 +105,8 @@ mo_omode(struct Client *client_p, struct Client *source_p, int parc, const char
|
||||||
for (i = 2; i < parc; i++)
|
for (i = 2; i < parc; i++)
|
||||||
{
|
{
|
||||||
if (i != 2)
|
if (i != 2)
|
||||||
strlcat(params, " ", sizeof params);
|
rb_strlcat(params, " ", sizeof params);
|
||||||
strlcat(params, parv[i], sizeof params);
|
rb_strlcat(params, parv[i], sizeof params);
|
||||||
}
|
}
|
||||||
|
|
||||||
sendto_wallops_flags(UMODE_WALLOP, &me,
|
sendto_wallops_flags(UMODE_WALLOP, &me,
|
||||||
|
|
|
@ -91,10 +91,6 @@ int inetpton(int af, const char *src, void *dst);
|
||||||
const char *inetntop_sock(struct sockaddr *src, char *dst, unsigned int size);
|
const char *inetntop_sock(struct sockaddr *src, char *dst, unsigned int size);
|
||||||
int inetpton_sock(const char *src, struct sockaddr *dst);
|
int inetpton_sock(const char *src, struct sockaddr *dst);
|
||||||
|
|
||||||
#ifndef HAVE_STRLCAT
|
|
||||||
size_t strlcat(char *dst, const char *src, size_t siz);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* clean_string - cleanup control and high ascii characters
|
* clean_string - cleanup control and high ascii characters
|
||||||
* -Dianora
|
* -Dianora
|
||||||
|
|
|
@ -205,7 +205,7 @@ m_join(struct Client *client_p, struct Client *source_p, int parc, const char *p
|
||||||
|
|
||||||
if(*jbuf)
|
if(*jbuf)
|
||||||
(void) strcat(jbuf, ",");
|
(void) strcat(jbuf, ",");
|
||||||
(void) strlcat(jbuf, name, sizeof(jbuf));
|
(void) rb_strlcat(jbuf, name, sizeof(jbuf));
|
||||||
}
|
}
|
||||||
|
|
||||||
if(parc > 2)
|
if(parc > 2)
|
||||||
|
|
|
@ -417,8 +417,8 @@ mo_masktrace(struct Client *client_p, struct Client *source_p, int parc,
|
||||||
char buf[512];
|
char buf[512];
|
||||||
rb_strlcpy(buf, mask, sizeof(buf));
|
rb_strlcpy(buf, mask, sizeof(buf));
|
||||||
if(!EmptyString(gecos)) {
|
if(!EmptyString(gecos)) {
|
||||||
strlcat(buf, " ", sizeof(buf));
|
rb_strlcat(buf, " ", sizeof(buf));
|
||||||
strlcat(buf, gecos, sizeof(buf));
|
rb_strlcat(buf, gecos, sizeof(buf));
|
||||||
}
|
}
|
||||||
|
|
||||||
report_operspy(source_p, "MASKTRACE", buf);
|
report_operspy(source_p, "MASKTRACE", buf);
|
||||||
|
|
|
@ -92,12 +92,12 @@ dump_map(struct Client *client_p, struct Client *root_p, char *pbuf)
|
||||||
rb_dlink_node *ptr;
|
rb_dlink_node *ptr;
|
||||||
*pbuf = '\0';
|
*pbuf = '\0';
|
||||||
|
|
||||||
strlcat(pbuf, root_p->name, BUFSIZE);
|
rb_strlcat(pbuf, root_p->name, BUFSIZE);
|
||||||
if (has_id(root_p))
|
if (has_id(root_p))
|
||||||
{
|
{
|
||||||
strlcat(pbuf, "[", BUFSIZE);
|
rb_strlcat(pbuf, "[", BUFSIZE);
|
||||||
strlcat(pbuf, root_p->id, BUFSIZE);
|
rb_strlcat(pbuf, root_p->id, BUFSIZE);
|
||||||
strlcat(pbuf, "]", BUFSIZE);
|
rb_strlcat(pbuf, "]", BUFSIZE);
|
||||||
}
|
}
|
||||||
len = strlen(buf);
|
len = strlen(buf);
|
||||||
buf[len] = ' ';
|
buf[len] = ' ';
|
||||||
|
|
|
@ -107,17 +107,17 @@ static void show_privs(struct Client *source_p, struct Client *target_p)
|
||||||
if (target_p->flags2 & p->mode)
|
if (target_p->flags2 & p->mode)
|
||||||
{
|
{
|
||||||
if (buf[0] != '\0')
|
if (buf[0] != '\0')
|
||||||
strlcat(buf, " ", sizeof buf);
|
rb_strlcat(buf, " ", sizeof buf);
|
||||||
strlcat(buf, p->name, sizeof buf);
|
rb_strlcat(buf, p->name, sizeof buf);
|
||||||
}
|
}
|
||||||
p++;
|
p++;
|
||||||
}
|
}
|
||||||
if (IsOper(target_p))
|
if (IsOper(target_p))
|
||||||
{
|
{
|
||||||
if (buf[0] != '\0')
|
if (buf[0] != '\0')
|
||||||
strlcat(buf, " ", sizeof buf);
|
rb_strlcat(buf, " ", sizeof buf);
|
||||||
strlcat(buf, "operator:", sizeof buf);
|
rb_strlcat(buf, "operator:", sizeof buf);
|
||||||
strlcat(buf, target_p->localClient->opername, sizeof buf);
|
rb_strlcat(buf, target_p->localClient->opername, sizeof buf);
|
||||||
}
|
}
|
||||||
p = &auth_client_table[0];
|
p = &auth_client_table[0];
|
||||||
while (p->name != NULL)
|
while (p->name != NULL)
|
||||||
|
@ -125,8 +125,8 @@ static void show_privs(struct Client *source_p, struct Client *target_p)
|
||||||
if (target_p->flags2 & p->mode)
|
if (target_p->flags2 & p->mode)
|
||||||
{
|
{
|
||||||
if (buf[0] != '\0')
|
if (buf[0] != '\0')
|
||||||
strlcat(buf, " ", sizeof buf);
|
rb_strlcat(buf, " ", sizeof buf);
|
||||||
strlcat(buf, p->name, sizeof buf);
|
rb_strlcat(buf, p->name, sizeof buf);
|
||||||
}
|
}
|
||||||
p++;
|
p++;
|
||||||
}
|
}
|
||||||
|
|
|
@ -285,8 +285,8 @@ do_rehash(struct Client *source_p, const char *type)
|
||||||
for (x = 0; rehash_commands[x].cmd != NULL && rehash_commands[x].handler != NULL;
|
for (x = 0; rehash_commands[x].cmd != NULL && rehash_commands[x].handler != NULL;
|
||||||
x++)
|
x++)
|
||||||
{
|
{
|
||||||
strlcat(cmdbuf, " ", sizeof(cmdbuf));
|
rb_strlcat(cmdbuf, " ", sizeof(cmdbuf));
|
||||||
strlcat(cmdbuf, rehash_commands[x].cmd, sizeof(cmdbuf));
|
rb_strlcat(cmdbuf, rehash_commands[x].cmd, sizeof(cmdbuf));
|
||||||
}
|
}
|
||||||
sendto_one_notice(source_p, ":rehash one of:%s", cmdbuf);
|
sendto_one_notice(source_p, ":rehash one of:%s", cmdbuf);
|
||||||
}
|
}
|
||||||
|
|
|
@ -181,8 +181,8 @@ scan_umodes(struct Client *client_p, struct Client *source_p, int parc,
|
||||||
rb_strlcpy(buf, "UMODES", sizeof buf);
|
rb_strlcpy(buf, "UMODES", sizeof buf);
|
||||||
for (i = 2; i < parc; i++)
|
for (i = 2; i < parc; i++)
|
||||||
{
|
{
|
||||||
strlcat(buf, " ", sizeof buf);
|
rb_strlcat(buf, " ", sizeof buf);
|
||||||
strlcat(buf, parv[i], sizeof buf);
|
rb_strlcat(buf, parv[i], sizeof buf);
|
||||||
}
|
}
|
||||||
report_operspy(source_p, "SCAN", buf);
|
report_operspy(source_p, "SCAN", buf);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1161,7 +1161,7 @@ channel_modes(struct Channel *chptr, struct Client *client_p)
|
||||||
*mbuf = '\0';
|
*mbuf = '\0';
|
||||||
|
|
||||||
rb_strlcpy(final, buf1, sizeof final);
|
rb_strlcpy(final, buf1, sizeof final);
|
||||||
strlcat(final, buf2, sizeof final);
|
rb_strlcat(final, buf2, sizeof final);
|
||||||
return final;
|
return final;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -725,68 +725,6 @@ inetpton(af, src, dst)
|
||||||
/* NOTREACHED */
|
/* NOTREACHED */
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
* strlcat and strlcpy were ripped from openssh 2.5.1p2
|
|
||||||
* They had the following Copyright info:
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
|
|
||||||
* All rights reserved.
|
|
||||||
*
|
|
||||||
* Redistribution and use in source and binary forms, with or without
|
|
||||||
* modification, are permitted provided that the following conditions
|
|
||||||
* are met:
|
|
||||||
* 1. Redistributions of source code must retain the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer.
|
|
||||||
* 2. Redistributions in binary form must reproduce the above copyright
|
|
||||||
* notice, this list of conditions and the following disclaimer in the
|
|
||||||
* documentation and/or other materials provided with the distribution.
|
|
||||||
* 3. The name of the author may not be used to endorse or promote products
|
|
||||||
* derived from this software without specific prior written permission.
|
|
||||||
*
|
|
||||||
* THIS SOFTWARE IS PROVIDED `AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
|
||||||
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
||||||
* AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
|
|
||||||
* THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
|
||||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
||||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
|
||||||
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
||||||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
||||||
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
|
||||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#ifndef HAVE_STRLCAT
|
|
||||||
size_t
|
|
||||||
strlcat(char *dst, const char *src, size_t siz)
|
|
||||||
{
|
|
||||||
char *d = dst;
|
|
||||||
const char *s = src;
|
|
||||||
size_t n = siz, dlen;
|
|
||||||
|
|
||||||
while(n-- != 0 && *d != '\0')
|
|
||||||
d++;
|
|
||||||
dlen = d - dst;
|
|
||||||
n = siz - dlen;
|
|
||||||
|
|
||||||
if(n == 0)
|
|
||||||
return (dlen + strlen(s));
|
|
||||||
while(*s != '\0')
|
|
||||||
{
|
|
||||||
if(n != 1)
|
|
||||||
{
|
|
||||||
*d++ = *s;
|
|
||||||
n--;
|
|
||||||
}
|
|
||||||
s++;
|
|
||||||
}
|
|
||||||
*d = '\0';
|
|
||||||
return (dlen + (s - src)); /* count does not include NUL */
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
char *
|
char *
|
||||||
strip_colour(char *string)
|
strip_colour(char *string)
|
||||||
{
|
{
|
||||||
|
|
|
@ -314,7 +314,7 @@ verify_access(struct Client *client_p, const char *username)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
rb_strlcpy(non_ident, "~", sizeof(non_ident));
|
rb_strlcpy(non_ident, "~", sizeof(non_ident));
|
||||||
strlcat(non_ident, username, sizeof(non_ident));
|
rb_strlcat(non_ident, username, sizeof(non_ident));
|
||||||
aconf = find_address_conf(client_p->host, client_p->sockhost,
|
aconf = find_address_conf(client_p->host, client_p->sockhost,
|
||||||
non_ident, client_p->username,
|
non_ident, client_p->username,
|
||||||
(struct sockaddr *) &client_p->localClient->ip,
|
(struct sockaddr *) &client_p->localClient->ip,
|
||||||
|
|
|
@ -162,12 +162,12 @@ show_isupport(struct Client *client_p)
|
||||||
nchars = extra_space, nparams = 0, buf[0] = '\0';
|
nchars = extra_space, nparams = 0, buf[0] = '\0';
|
||||||
}
|
}
|
||||||
if (nparams > 0)
|
if (nparams > 0)
|
||||||
strlcat(buf, " ", sizeof buf), nchars++;
|
rb_strlcat(buf, " ", sizeof buf), nchars++;
|
||||||
strlcat(buf, item->name, sizeof buf);
|
rb_strlcat(buf, item->name, sizeof buf);
|
||||||
if (!EmptyString(value))
|
if (!EmptyString(value))
|
||||||
{
|
{
|
||||||
strlcat(buf, "=", sizeof buf);
|
rb_strlcat(buf, "=", sizeof buf);
|
||||||
strlcat(buf, value, sizeof buf);
|
rb_strlcat(buf, value, sizeof buf);
|
||||||
}
|
}
|
||||||
nchars += l;
|
nchars += l;
|
||||||
nparams++;
|
nparams++;
|
||||||
|
|
Loading…
Reference in a new issue