Merge pull request #48 from loki-47-6F-64/master

Correct payload-length when parsing RTSP Messages
This commit is contained in:
Cameron Gutman 2020-01-11 11:50:55 -08:00 committed by GitHub
commit 3ccacdd3be
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -210,11 +210,11 @@ int parseRtspMessage(PRTSP_MESSAGE msg, char* rtspMessage, int length) {
// Package the new parsed message into the struct
if (flag == TYPE_REQUEST) {
createRtspRequest(msg, messageBuffer, FLAG_ALLOCATED_MESSAGE_BUFFER | FLAG_ALLOCATED_OPTION_ITEMS, command, target,
protocol, sequenceNum, options, payload, payload ? length - (int)(messageBuffer - payload) : 0);
protocol, sequenceNum, options, payload, payload ? length - (int)(payload - messageBuffer) : 0);
}
else {
createRtspResponse(msg, messageBuffer, FLAG_ALLOCATED_MESSAGE_BUFFER | FLAG_ALLOCATED_OPTION_ITEMS, protocol, statusCode,
statusStr, sequenceNum, options, payload, payload ? length - (int)(messageBuffer - payload) : 0);
statusStr, sequenceNum, options, payload, payload ? length - (int)(payload - messageBuffer) : 0);
}
return RTSP_ERROR_SUCCESS;
@ -394,4 +394,4 @@ void freeMessage(PRTSP_MESSAGE msg) {
if (msg->flags & FLAG_ALLOCATED_PAYLOAD) {
free(msg->payload);
}
}
}