NULL check after malloc

This commit is contained in:
Scott Giese 2021-02-13 22:25:31 -06:00
parent 469a28c49a
commit d1509d6096
3 changed files with 14 additions and 8 deletions

View File

@ -339,10 +339,12 @@ int main(int argc, char **argv) {
char *home = getenv("HOME");
if (!home) home = ".";
path = malloc(strlen(home) + 1 + sizeof(".rblcheckrc"));
sprintf(path, "%s/.rblcheckrc", home);
if (!addzonefile(path))
addzonefile("/etc/rblcheckrc");
free(path);
if (path) {
sprintf(path, "%s/.rblcheckrc", home);
if (!addzonefile(path))
addzonefile("/etc/rblcheckrc");
free(path);
}
}
}
if (!nzones)

View File

@ -67,8 +67,10 @@ void BufferedLogCallback::operator()(sgDebugClass c, sgDebugPriority p,
vector_cstring::value_type msg;
if (aMessage.size() >= d->m_maxLength) {
msg = (vector_cstring::value_type) malloc(d->m_maxLength);
strncpy((char*) msg, aMessage.c_str(), d->m_maxLength - 1);
msg[d->m_maxLength - 1] = 0; // add final NULL byte
if (msg) {
strncpy((char*) msg, aMessage.c_str(), d->m_maxLength - 1);
msg[d->m_maxLength - 1] = 0; // add final NULL byte
}
} else {
msg = (vector_cstring::value_type) strdup(aMessage.c_str());
}

View File

@ -239,7 +239,8 @@ IPAddress::IPAddress( const IPAddress& other ) :
{
if (other.addr) {
addr = (struct sockaddr_in*) malloc(sizeof(struct sockaddr_in));
memcpy(addr, other.addr, sizeof(struct sockaddr_in));
if (addr)
memcpy(addr, other.addr, sizeof(struct sockaddr_in));
}
}
@ -252,7 +253,8 @@ const IPAddress& IPAddress::operator=(const IPAddress& other)
if (other.addr) {
addr = (struct sockaddr_in*) malloc(sizeof(struct sockaddr_in));
memcpy(addr, other.addr, sizeof(struct sockaddr_in));
if (addr)
memcpy(addr, other.addr, sizeof(struct sockaddr_in));
}
return *this;