diff options
| author | Maksim Yevmenkin <emax@FreeBSD.org> | 2007-02-23 19:37:47 +0000 |
|---|---|---|
| committer | Maksim Yevmenkin <emax@FreeBSD.org> | 2007-02-23 19:37:47 +0000 |
| commit | 6bfc799ccfbfdb10b61b31fe27eaca956b91990d (patch) | |
| tree | 59d1af18ec21ae70e6a15189a4dad6a2d0d2559c /usr.sbin | |
| parent | 21ab16bd5b7077b165e9264b71f964c66f6831f2 (diff) | |
Notes
Diffstat (limited to 'usr.sbin')
| -rw-r--r-- | usr.sbin/bluetooth/sdpd/server.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/usr.sbin/bluetooth/sdpd/server.c b/usr.sbin/bluetooth/sdpd/server.c index bef7e3ee8d13..816c6f5e6c2f 100644 --- a/usr.sbin/bluetooth/sdpd/server.c +++ b/usr.sbin/bluetooth/sdpd/server.c @@ -432,7 +432,8 @@ server_process_request(server_p srv, int32_t fd) return (-1); } - if (sizeof(*pdu) + (pdu->len = ntohs(pdu->len)) == len) { + if (len >= sizeof(*pdu) && + sizeof(*pdu) + (pdu->len = ntohs(pdu->len)) == len) { switch (pdu->pid) { case SDP_PDU_SERVICE_SEARCH_REQUEST: error = server_prepare_service_search_response(srv, fd); |
