forked from Imagelibrary/rtems
Patch from Eric Norum <eric@cls.usask.ca> to prevent leaking MT_SONAME
mbuf's in the network stack.
This commit is contained in:
@@ -137,6 +137,7 @@ connect (int s, struct sockaddr *name, int namelen)
|
|||||||
}
|
}
|
||||||
error = soconnect (so, nam);
|
error = soconnect (so, nam);
|
||||||
if (error) {
|
if (error) {
|
||||||
|
m_freem(nam);
|
||||||
errno = error;
|
errno = error;
|
||||||
rtems_bsdnet_semaphore_release ();
|
rtems_bsdnet_semaphore_release ();
|
||||||
return -1;
|
return -1;
|
||||||
@@ -605,6 +606,7 @@ getpeersockname (int s, struct sockaddr *name, int *namelen, int pflag)
|
|||||||
else
|
else
|
||||||
error = (*so->so_proto->pr_usrreqs->pru_sockaddr)(so, m);
|
error = (*so->so_proto->pr_usrreqs->pru_sockaddr)(so, m);
|
||||||
if (error) {
|
if (error) {
|
||||||
|
m_freem(m);
|
||||||
errno = error;
|
errno = error;
|
||||||
rtems_bsdnet_semaphore_release ();
|
rtems_bsdnet_semaphore_release ();
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
Reference in New Issue
Block a user