| line |
true |
false |
branch |
|
31
|
17 |
0 |
if (!obj || !sv_isa(obj, "Socket::MsgHdr")) |
|
|
0 |
17 |
if (!obj || !sv_isa(obj, "Socket::MsgHdr")) |
|
44
|
17 |
0 |
if ((svp = hv_fetch(hash, "name", 4, FALSE)) && SvOK(*svp)) { |
|
|
0 |
17 |
if ((svp = hv_fetch(hash, "name", 4, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "name", 4, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "name", 4, FALSE)) && SvOK(*svp)) { |
|
45
|
0 |
17 |
mh->m.msg_name = SvPV_force(*svp, dlen); |
|
47
|
8 |
9 |
if (0 == dlen) mh->m.msg_name = NULL; |
|
50
|
17 |
0 |
if ((svp = hv_fetch(hash, "buf", 3, FALSE)) && SvOK(*svp)) { |
|
|
0 |
17 |
if ((svp = hv_fetch(hash, "buf", 3, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "buf", 3, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "buf", 3, FALSE)) && SvOK(*svp)) { |
|
51
|
6 |
11 |
mh->io.iov_base = SvPV_force(*svp, dlen); |
|
53
|
0 |
17 |
if (0 == dlen) mh->io.iov_base = NULL; |
|
56
|
17 |
0 |
if ((svp = hv_fetch(hash, "control", 7, FALSE)) && SvOK(*svp)) { |
|
|
0 |
17 |
if ((svp = hv_fetch(hash, "control", 7, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "control", 7, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "control", 7, FALSE)) && SvOK(*svp)) { |
|
57
|
2 |
15 |
mh->m.msg_control = SvPV_force(*svp, dlen); |
|
59
|
14 |
3 |
if (0 == dlen) mh->m.msg_control = NULL; |
|
62
|
17 |
0 |
if ((svp = hv_fetch(hash, "flags", 5, FALSE)) && SvOK(*svp)) { |
|
|
0 |
17 |
if ((svp = hv_fetch(hash, "flags", 5, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "flags", 5, FALSE)) && SvOK(*svp)) { |
|
|
0 |
0 |
if ((svp = hv_fetch(hash, "flags", 5, FALSE)) && SvOK(*svp)) { |
|
63
|
17 |
0 |
mh->m.msg_flags = SvIV(*svp); |
|
79
|
5 |
4 |
for (i=0; i
|
|
89
|
5 |
4 |
for (i=0; i
|
|
92
|
5 |
0 |
cm->cmsg_level = SvIV( ST(i) ); |
|
93
|
5 |
0 |
cm->cmsg_type = SvIV( ST(i+1) ); |
|
108
|
2 |
0 |
dummy.msg_control = (struct cmsghdr *) SvPV(cmsv, len); |
|
111
|
0 |
2 |
if (!len) |
|
114
|
2 |
0 |
cm = CMSG_FIRSTHDR(&dummy); |
|
115
|
3 |
2 |
for (; cm; cm = CMSG_NXTHDR(&dummy, cm)) { |
|
116
|
0 |
3 |
XPUSHs(sv_2mortal(newSViv(cm->cmsg_level))); |
|
117
|
0 |
3 |
XPUSHs(sv_2mortal(newSViv(cm->cmsg_type))); |
|
118
|
0 |
3 |
XPUSHs(sv_2mortal(newSVpvn(CMSG_DATA(cm), |
|
149
|
7 |
1 |
if ((RETVAL = recvmsg(PerlIO_fileno(s), &mh.m, flags)) >= 0) { |
|
155
|
7 |
0 |
if ((svp = hv_fetch(hsh, "name", 4, FALSE))) |
|
157
|
7 |
0 |
if ((svp = hv_fetch(hsh, "buf", 3, FALSE))) |
|
159
|
7 |
0 |
if ((svp = hv_fetch(hsh, "control", 7, FALSE))) |