blob: 3de6939a70eb552fbe3e48317dc69288b4b19a3f [file] [log] [blame]
/* ------------------------------------------------------------------
* Copyright (C) 2008 PacketVideo
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied.
* See the License for the specific language governing permissions
* and limitations under the License.
* -------------------------------------------------------------------
*/
#include "oscl_base.h"
#include "rtsp_par_com.h"
OSCL_EXPORT_REF void
RTSPGenericMessage::reset()
{
secondaryBufferSpace = secondaryBuffer;
secondaryBufferSizeUsed = 0;
numPtrFields = 0;
msgType = RTSPUnknownMsg;
method = METHOD_UNRECOGNIZED;
statusCode = 0;
methodString.setPtrLen("", 0);
reasonString.setPtrLen("", 0);
cseq = 0;
cseqIsSet = false;
bufferSize = 0;
bufferSizeIsSet = false;
authorizationFlag = 0;
authorizationFlagIsSet = 0;
// transport = ... ?
numOfTransportEntries = 0;
for (int jj = 0; jj < RTSP_MAX_NUMBER_OF_TRANSPORT_ENTRIES; ++jj)
{
transport[jj].protocolIsSet = false;
transport[jj].profileIsSet = false;
transport[jj].transportTypeIsSet = false;
transport[jj].deliveryIsSet = false;
transport[jj].destinationIsSet = false;
transport[jj].channelIsSet = false;
transport[jj].appendIsSet = false;
transport[jj].ttlIsSet = false;
transport[jj].layersIsSet = false;
transport[jj].portIsSet = false;
transport[jj].client_portIsSet = false;
transport[jj].server_portIsSet = false;
transport[jj].modeIsSet = false;
transport[jj].ssrcIsSet = false;
}
// range = ... ?
rangeIsSet = false;
sessionIdIsSet = false;
numOfRtpInfoEntries = 0;
for (int ii = 0; ii < RTSP_MAX_NUMBER_OF_RTP_INFO_ENTRIES; ++ii)
{
rtpInfo[ii].urlIsSet = false;
rtpInfo[ii].seqIsSet = false;
rtpInfo[ii].rtptimeIsSet = false;
}
contentType.setPtrLen("", 0);
contentTypeIsSet = false;
contentBase.setPtrLen("", 0);
contentBaseMode = NO_CONTENT_BASE;
contentLength = 0;
contentLengthIsSet = false;
userAgentIsSet = false;
acceptIsSet = false;
requireIsSet = false;
originalURI = "";
#ifdef RTSP_PLAYLIST_SUPPORT
methodEosIsSet = false;
comPvServerPlaylistIsSet = false;
#endif
#ifdef ASF_STREAMING
eofField.setPtrLen("", 0);
eofFieldIsSet = false;
XMLIsSet = false;
#endif
timeout = 60;
}
OSCL_EXPORT_REF const StrPtrLen *
RTSPGenericMessage::queryField(const StrCSumPtrLen & query) const
{
for (uint32 ii = 0; ii < numPtrFields; ++ii)
{
if (fieldKeys[ ii ].isCIEquivalentTo(query))
{
return fieldVals + ii;
}
}
return NULL;
}