Diff between d427a2a5f1977f1620dc9128863ad0d64d056ccb and 00ffc553a194c2ca1db52dacd42838a135b4ef65
Changed Files
| File | Additions | Deletions | Status |
| btio/btio.c | +6 | -2 | modified |
Full Patch
diff --git a/btio/btio.c b/btio/btio.c
index 30804ca..43275cb 100644
--- a/btio/btio.c
+++ b/btio/btio.c
@@ -1665,12 +1665,16 @@ static bool get_bc_sid(int sock, uint8_t *sid, GError **err)
olen = sizeof(addr);
memset(&addr, 0, olen);
- if (getpeername(sock, (void *)&addr, &olen) < 0 ||
- olen != sizeof(addr)) {
+ if (getpeername(sock, (void *)&addr, &olen) < 0) {
ERROR_FAILED(err, "getpeername", errno);
return false;
}
+ if (olen != sizeof(addr)) {
+ ERROR_FAILED(err, "getpeername: size mismatch", EINVAL);
+ return false;
+ }
+
*sid = addr.iso.iso_bc->bc_sid;
return true;