--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/bluetoothmgmt/btcommon/inc/sdpconsts.h Fri Jan 15 08:13:17 2010 +0200
@@ -0,0 +1,112 @@
+// Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+// Constants for the SDP protocol.
+// Version for the SDP server
+//
+//
+
+#ifndef SDPCONSTS_H
+#define SDPCONSTS_H
+
+#include <btsdp.h>
+
+// The PSM on which SDP resides
+static const TInt KSDPPSM = 0x01;
+
+// Idle timer default value (seconds)
+static const TInt KSDPIdleTimeout = 5;
+
+// Client timeouts
+static const TInt KSDPClientTimeout = 120; // seconds
+
+// PDU Size
+static const TInt KSdpMaxPduSize = 250;
+
+//PDU Fields
+static const TInt KSdpPduHeaderSize = 5;
+static const TInt KSdpPduIdOffset = 0;
+static const TInt KSdpPduTransIdOffset = 1;
+static const TInt KSdpPduParamLengthOffset = 3;
+
+// PDU Types
+enum TSdpPduId
+ {
+ EErrorResponse = 0x01,
+ EServiceSearchRequest = 0x02,
+ EServiceSearchResponse = 0x03,
+ EServiceAttributeRequest = 0x04,
+ EServiceAttributeResponse = 0x05,
+ EServiceSearchAttributeRequest = 0x06,
+ EServiceSearchAttributeResponse = 0x07
+ };
+
+// Errors
+enum TSdpErrorCodes // EPOC error that'll generate each code
+ {
+ EErrorReserved = 0x00,
+ EInvalidSdpVersion = 0x01, // KErrNotSupported
+ EInvalidServiceRecordHandle = 0x02, // KErrBadHandle
+ EInvalidRequestSyntax = 0x03, // KErrCorrupt, KErrArgument
+ EInvalidPduSize = 0x04, // KErrOverflow, KErrUnderflow, KErrTooBig
+ EInvalidContinuationState = 0x05, // KErrNotReady, KErrUnknown, KErrLocked
+ EInsufficientResources = 0x06, // KErrNoMemory, KErrHardwareNotAvailable
+ };
+
+
+
+// Data Element stuff
+
+static const TInt KErrSdpParserInvalidSizeForType = -3000;
+static const TInt KErrSdpParserInvalidSizeForParentList = -3001;
+static const TInt KErrSdpBadAttributeId = -3002;
+
+static const TInt KSdpRecordHandleSize = 4;
+static const TInt KSdpAttributeIdSize = 2;
+static const TSdpServRecordHandle KSdpMaxServRecordHandle = 0xffffffff;
+static const TSdpServRecordHandle KSdpMinServRecordHandle = 0x10000;
+
+static const TInt KSdpContinuationStateMaxLength = 16;
+
+enum TSdpElementSizeDesc
+ {
+ ESizeOneByte = 0,
+ ESizeTwoBytes = 1,
+ ESizeFourBytes = 2,
+ ESizeEightBytes = 3,
+ ESizeSixteenBytes = 4,
+ ESizeOneAdditional = 5,
+ ESizeTwoAdditional = 6,
+ ESizeFourAdditional = 7
+ };
+
+// Element header fields
+static const TInt KSdpElemHdrTypeShift = 3;
+static const TInt KSdpElemHdrSizeMask = 0x07;
+
+// Data Element Stuff
+static const TUint8 KSdpElementValidSizes[] =
+ { // Type // Sizes
+ 0x01, // 00 -------0
+ 0x1f, // 01 ---43210
+ 0x1f, // 02 ---43210
+ 0x16, // 03 ---4-21-
+ 0xe0, // 04 765-----
+ 0x01, // 05 -------0
+ 0xe0, // 06 765-----
+ 0xe0, // 07 765-----
+ 0xe0 // 08 765-----
+ };
+
+
+#endif