]> jfr.im git - irc/rqf/shadowircd.git/commitdiff
Fix some valgrind warnings.
authorB.Greenham <redacted>
Thu, 27 May 2010 22:03:51 +0000 (18:03 -0400)
committerB.Greenham <redacted>
Thu, 27 May 2010 22:03:51 +0000 (18:03 -0400)
extensions/m_oaccept.c
extensions/m_okick.c
modules/core/m_kick.c
modules/core/m_message.c
src/channel.c

index f0b38edf426f91920573d1e93226d56a49ede575..f24012be32099730a5819f4b3b096c1f19c833c0 100644 (file)
@@ -23,7 +23,7 @@ mo_oaccept(struct Client *client_p, struct Client *source_p, int parc, const cha
        struct Metadata *md;
        struct DictionaryIter iter;
        struct Client *target_p;
-       char *text = rb_strdup("");
+       char text[10];
 
        if(!(target_p = find_client(parv[1])))
        {
@@ -31,10 +31,10 @@ mo_oaccept(struct Client *client_p, struct Client *source_p, int parc, const cha
                return 0;
        }
 
-       rb_sprintf(text, "O%s", source_p->id);
+       rb_snprintf(text, sizeof(text), "O%s", source_p->id);
 
-       /* Don't allow someone to pointlessly fill up someone's metadata
-        * with identical OACCEPT entries. */
+       /* Provide a nice error message if you try to OACCEPT someone
+        * who you've already OACCEPTed. */
        DICTIONARY_FOREACH(md, &iter, target_p->user->metadata)
        {
                if(!strcmp(md->value, "OACCEPT") && !strcmp(md->name, text))
index c09c42a074f150be1447ee9c113b663415437cd0..f3733162c160a18383774abef3fe43d6458c8f5f 100644 (file)
@@ -68,7 +68,7 @@ mo_okick(struct Client *client_p, struct Client *source_p, int parc, const char
        char *name;
        char *p = NULL;
        char *user;
-       char *text = rb_strdup("");
+       char text[10];
        static char buf[BUFSIZE];
 
        if(*parv[2] == '\0')
@@ -138,7 +138,7 @@ mo_okick(struct Client *client_p, struct Client *source_p, int parc, const char
                      ":%s KICK %s %s :%s", me.id, chptr->chname, who->id, comment);
        remove_user_from_channel(msptr);
 
-       rb_sprintf(text, "K%s", who->id);
+       rb_snprintf(text, sizeof(text), "K%s", who->id);
 
        /* we don't need to track NOREJOIN stuff unless it's our client being kicked */
        if(MyClient(who) && chptr->mode.mode & MODE_NOREJOIN)
index 572e9117d641b39202f2c8fbc8e8c03475ab066b..3029ca6f0de72b315e50a3d84ccb37310f062f12 100644 (file)
@@ -68,7 +68,7 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p
        char *comment;
        const char *name;
        char *p = NULL;
-       char *text = rb_strdup("");
+       char text[10];
        const char *user;
        static char buf[BUFSIZE];
        int is_override = 0;
@@ -235,7 +235,7 @@ m_kick(struct Client *client_p, struct Client *source_p, int parc, const char *p
                              use_id(source_p), chptr->chname, use_id(who), comment);
                remove_user_from_channel(msptr);
 
-               rb_sprintf(text, "K%s", who->id);
+               rb_snprintf(text, sizeof(text), "K%s", who->id);
 
                /* we don't need to track NOREJOIN stuff unless it's our client being kicked */
                if(MyClient(who) && chptr->mode.mode & MODE_NOREJOIN)
index 6e8ba99df8ef3e3ac18c720fa51fdcba0cb8723b..df3d97d137add0e3a531959a2d1bc0e4281ff986 100644 (file)
@@ -733,7 +733,7 @@ msg_client(int p_or_n, const char *command,
        struct Metadata *md;
        struct DictionaryIter iter;
        int oaccept = 0;
-       char *text3 = rb_strdup("");
+       char text3[10];
 
        if(MyClient(source_p))
        {
@@ -796,7 +796,7 @@ msg_client(int p_or_n, const char *command,
                {
                        if (IsOper(source_p))
                        {
-                               rb_sprintf(text3, "O%s", source_p->id);
+                               rb_snprintf(text3, sizeof(text3), "O%s", source_p->id);
                                DICTIONARY_FOREACH(md, &iter, target_p->user->metadata)
                                {
                                        if(!strcmp(md->value, "OACCEPT") && !strcmp(md->name, text3))
index f30a069a6861437ce36a577313d1944800aaed19..58268925ba55a02ac17916eaff55d62a1b4b366c 100644 (file)
@@ -826,7 +826,7 @@ can_join(struct Client *source_p, struct Channel *chptr, char *key)
        char src_host[NICKLEN + USERLEN + HOSTLEN + 6];
        char src_iphost[NICKLEN + USERLEN + HOSTLEN + 6];
        char src_althost[NICKLEN + USERLEN + HOSTLEN + 6];
-       char *text = rb_strdup("");
+       char text[10];
        int use_althost = 0;
        int i = 0;
        hook_data_channel moduledata;
@@ -857,7 +857,7 @@ can_join(struct Client *source_p, struct Channel *chptr, char *key)
        if((is_banned(chptr, source_p, NULL, src_host, src_iphost)) == CHFL_BAN)
                return (ERR_BANNEDFROMCHAN);
 
-       rb_sprintf(text, "K%s", source_p->id);
+       rb_snprintf(text, sizeof(text), "K%s", source_p->id);
 
        DICTIONARY_FOREACH(md, &iter, chptr->metadata)
        {