mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-31 18:55:19 +00:00
Merged revisions 228339 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r228339 | dvossel | 2009-11-06 09:42:46 -0600 (Fri, 06 Nov 2009) | 12 lines Merged revisions 228338 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r228338 | dvossel | 2009-11-06 09:41:41 -0600 (Fri, 06 Nov 2009) | 5 lines fixes crash in astfd.c (closes issue #15981) Reported by: slavon ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@228342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
13
main/astfd.c
13
main/astfd.c
@@ -130,15 +130,16 @@ int __ast_fdleak_pipe(int *fds, const char *file, int line, const char *func)
|
||||
#undef socket
|
||||
int __ast_fdleak_socket(int domain, int type, int protocol, const char *file, int line, const char *func)
|
||||
{
|
||||
char sdomain[20], stype[20], *sproto;
|
||||
char sdomain[20], stype[20], *sproto = NULL;
|
||||
struct protoent *pe;
|
||||
int res = socket(domain, type, protocol);
|
||||
if (res < 0 || res > 1023) {
|
||||
return res;
|
||||
}
|
||||
|
||||
pe = getprotobynumber(protocol);
|
||||
sproto = pe->p_name;
|
||||
if ((pe = getprotobynumber(protocol))) {
|
||||
sproto = pe->p_name;
|
||||
}
|
||||
|
||||
if (domain == PF_UNIX) {
|
||||
ast_copy_string(sdomain, "PF_UNIX", sizeof(sdomain));
|
||||
@@ -162,7 +163,11 @@ int __ast_fdleak_socket(int domain, int type, int protocol, const char *file, in
|
||||
snprintf(stype, sizeof(stype), "%d", type);
|
||||
}
|
||||
|
||||
STORE_COMMON(res, "socket", "%s,%s,\"%s\"", sdomain, stype, sproto);
|
||||
if (sproto) {
|
||||
STORE_COMMON(res, "socket", "%s,%s,\"%s\"", sdomain, stype, sproto);
|
||||
} else {
|
||||
STORE_COMMON(res, "socket", "%s,%s,\"%d\"", sdomain, stype, protocol);
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user