summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Atallah <datallah@pidgin.im>2009-05-02 19:21:11 +0000
committerDaniel Atallah <datallah@pidgin.im>2009-05-02 19:21:11 +0000
commit1651bc33d3da082ec6e4b1323f5b20991327fe47 (patch)
treed76ea2e3659e721096ab0b1d58a6875484da0525
parent61894d6ce00bd846c07ae5aae456538f4ca32d31 (diff)
downloadpidgin-1651bc33d3da082ec6e4b1323f5b20991327fe47.tar.gz
Make sure that the chat room name is NUL-terminated when it is truncated or
exactly 128 chars. This came out of the veracode analysis.
-rw-r--r--libpurple/protocols/oscar/family_oservice.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libpurple/protocols/oscar/family_oservice.c b/libpurple/protocols/oscar/family_oservice.c
index 746f3b28a6..d7ccd121e0 100644
--- a/libpurple/protocols/oscar/family_oservice.c
+++ b/libpurple/protocols/oscar/family_oservice.c
@@ -151,7 +151,8 @@ aim_chat_join(OscarData *od, guint16 exchange, const char *roomname, guint16 ins
memset(&csi, 0, sizeof(csi));
csi.exchange = exchange;
- strncpy(csi.name, roomname, sizeof(csi.name));
+ strncpy(csi.name, roomname, sizeof(csi.name) - 1);
+ csi.name[sizeof(csi.name) - 1] = '\0';
csi.instance = instance;
/*