After lots of hair pulling trying to hunt down a number of subtle bugs, I'm
finally able to successfully connect to Clear using 64-bit Ubuntu Maverick
(10.10) and the 1.5.1 code with this patch.
The LED still doesn't work, but everything else seems ok.
As for the LED not working, I think the relevant lines in wimaxd.log are:
09:52:49: 2343180048 @Info @ACT
@Populate_PreInitConfigurationStruct (IN) [Populate_PreInitConfigurationStruct]
@DeviceConfiguration.c(521) @wimaxd
09:52:49: 2343180048 @Error @ACT @Populate_LedStruct F1
[Populate_LedStruct]
@DeviceConfiguration.c(97)
@wimaxd
09:52:49: 2343180048 @Info @ACT @cannot get LED registry
parameters [Populate_PreInitConfigurationStruct]
@DeviceConfiguration.c(529)
@wimaxd
(This looks like it is supposed to happen, since
OSAL_ConfigController_GetMultValues() is not implemented yet)
And:
09:52:49: 2343180048 @Info @SERVICE @The orig status returned from
the driver is: 7 [wmx_L4ResultToWMXStatus]
@WrappersUtils.c (119) @wimaxd
09:52:49: 2343180048 @Info @SERVICE @returned status from driver
after wmxGetStatusStr function is WMX_ST_ILLEGAL_OPERATION [wmx_SendL4Command]
@WrappersUtils.c (263) @wimaxd
09:52:49: 2343180048 @Error @ACT @cannot set LED param. driver
returned 12 [Act_SetDeviceConfigParam]
@Act.c (400) @wimaxd
On Tue, Oct 05, 2010 at 01:03:20PM -0400, Paul Donohue wrote:
> Correct assorted 64-bit issues with pointers, type casting, and struct
> packing.
>
> Signed-off-by: Paul Donohue <[email protected]>
>
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/CommonServices/VersionUtils.h
> wimax-1.5.1/InfraStack/OSAgnostic/Common/CommonServices/VersionUtils.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/CommonServices/VersionUtils.h
> 2010-06-07 19:20:49.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/Common/CommonServices/VersionUtils.h
> 2010-10-04 18:41:02.000000000 -0400
> @@ -51,6 +51,7 @@
> UINT32 revision;
> UINT32 branch;
> } wmx_Version_t, *wmx_pVersion_t;
> +#pragma pack( pop )
>
> typedef char* wmx_ModuleName_t;
> typedef char* wmx_pVersionStr_t;
> @@ -62,6 +63,7 @@
> wmx_ModuleName_t moduleName;
> wmx_Version_t version;
> } wmx_VersionEntry_t, *wmx_pVersionEntry_t;
> +#pragma pack( pop )
>
>
> BOOL VersionUtils_Init();
> @@ -73,4 +75,4 @@
> EXTERN_C EXPORT VERSION_RESULT ValidateVersion(wmx_ModuleName_t moduleName,
> wmx_Version_t actualVersion, wmx_Version_t expectedVersion);
>
>
> -#endif // _VERSION_UTILS_H
> \ No newline at end of file
> +#endif // _VERSION_UTILS_H
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L4Common/SourceControl/BitmanCommon.h
>
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L4Common/SourceControl/BitmanCommon.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L4Common/SourceControl/BitmanCommon.h
> 2010-06-07 19:20:49.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L4Common/SourceControl/BitmanCommon.h
> 2010-10-04 18:35:39.000000000 -0400
> @@ -67,6 +67,10 @@
> #define MASK_1 (0xFFFFFFFFFFFFFFFF)
> #define MASK_2 (0xFFFFFFFFFFFFFFFE)
> #define MASK_4 (0xFFFFFFFFFFFFFFFC)
> +#elif __x86_64__
> +#define MASK_1 (0xFFFFFFFFFFFFFFFF)
> +#define MASK_2 (0xFFFFFFFFFFFFFFFE)
> +#define MASK_4 (0xFFFFFFFFFFFFFFFC)
> #else
> #define MASK_1 (0xFFFFFFFF)
> #define MASK_2 (0xFFFFFFFE)
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L4Common/SourceControl/CommonTypes.h
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L4Common/SourceControl/CommonTypes.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L4Common/SourceControl/CommonTypes.h
> 2010-06-07 19:20:49.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L4Common/SourceControl/CommonTypes.h
> 2010-10-04 18:35:39.000000000 -0400
> @@ -91,6 +91,8 @@
> /// when you need to hold both a pointer and a number
> #ifdef WIN64
> typedef UINT64 POINTER_AND_UINT;
> +#elif __x86_64__
> +typedef UINT64 POINTER_AND_UINT;
> #else
> typedef UINT POINTER_AND_UINT;
> #endif
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L5Common/IndicatorsSubscribers.c
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L5Common/IndicatorsSubscribers.c
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L5Common/IndicatorsSubscribers.c
> 2010-10-02 03:28:24.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/Common/L5Common/IndicatorsSubscribers.c
> 2010-10-04 18:40:31.000000000 -0400
> @@ -153,7 +153,7 @@
> SendIndData *buffer = _buffer;
> ListItem* handle;
> L5_TARGET_ID targetID;
> - ULONG_PTR data;
> + L5_TARGET_ID data;
> L5_RESULT res;
> IndicatorSubscribers *indSubscribers;
> List tempList;
> @@ -174,12 +174,12 @@
> handle = CreateIterator(&(indSubscribers->subscribersList));
> // handle = Iterator_GetNext(&(indSubscribers->subscribersList),
> handle, (void**)&targetID);
> handle = Iterator_GetNext(&(indSubscribers->subscribersList),
> handle, (void**)(&data));
> - targetID = (int) data;
> + targetID = data;
> while (handle != NULL)
> {
> List_AddItem(&tempList, (void *)targetID);
> handle =
> Iterator_GetNext(&(indSubscribers->subscribersList), handle, (void**)(&data));
> - targetID = (int)data; ////
> + targetID = data; ////
>
> // handle =
> Iterator_GetNext(&(indSubscribers->subscribersList), handle,
> (void**)&targetID);
> }
> @@ -189,7 +189,7 @@
> //iterate the temp list and send the targets indication:
> handle = CreateIterator(&tempList);
> handle = Iterator_GetNext(&tempList, handle, (void**)(&data));
> - targetID = (int) data;
> + targetID = data;
>
> // handle = Iterator_GetNext(&tempList, handle, (void**)&targetID);
> while (handle != NULL)
> @@ -219,7 +219,7 @@
> // handle = Iterator_GetNext(&tempList, handle,
> (void**)&targetID);
>
> handle = Iterator_GetNext(&tempList, handle,
> (void**)(&data));
> - targetID = (int) data;
> + targetID = data;
>
>
> // TODO - XXX - check L5_COMMON_UTILS_IsTargetNotExist
> diff -Naur wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L5Common/L5Common.h
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L5Common/L5Common.h
> --- wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L5Common/L5Common.h
> 2010-10-02 03:28:23.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/Common/L5Common/L5Common.h
> 2010-10-04 18:40:31.000000000 -0400
> @@ -282,5 +282,6 @@
> extern tL5DispatcherFunctions *GetL5Funcs();
> extern tUtilityFunctions *GetUtilsFuncs();
>
> +#pragma pack(pop)
>
> #endif
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L5Common/L5CommonUtils.c
> wimax-1.5.1/InfraStack/OSAgnostic/Common/L5Common/L5CommonUtils.c
> --- wimax-1.5.1.orig//InfraStack/OSAgnostic/Common/L5Common/L5CommonUtils.c
> 2010-06-07 19:20:49.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/Common/L5Common/L5CommonUtils.c
> 2010-10-04 18:35:39.000000000 -0400
> @@ -182,7 +182,7 @@
>
> result = l5_common_utils_ActuallySendMessage( Socket, pMessage );
>
> - TRACE(TR_MOD_SERVICE, TR_SEV_NOTICE, "Result of ActuallySendMessage is
> %d %d", result);
> + TRACE(TR_MOD_SERVICE, TR_SEV_NOTICE, "Result of ActuallySendMessage is
> %d", result);
>
> return result;
> }
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Product/AppSrvInfra/L5SocketsDispatcher.c
> wimax-1.5.1/InfraStack/OSAgnostic/Product/AppSrvInfra/L5SocketsDispatcher.c
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/Product/AppSrvInfra/L5SocketsDispatcher.c
> 2010-10-02 03:28:24.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/Product/AppSrvInfra/L5SocketsDispatcher.c
> 2010-10-04 18:35:39.000000000 -0400
> @@ -61,7 +61,8 @@
> L5_CONNECTION L5Conn; // Can be NULL before handshake
>
> // Is this an active slot?
> - BOOL bActive;
> + // Updated using OSAL_atomic_exchange(), so this must be a LONG not a
> BOOL
> + LONG bActive;
>
> // Connections from both sides
> SOCKETS_CLIENT_ID Socket;
> @@ -702,7 +703,7 @@
> // XXX SEH error handling
> OSAL_init_critical_section( &(pConn->csSendReceive) );
> OSAL_init_critical_section( &(pConn->csHandlingRequest) );
> - OSAL_atomic_exchange( (LPLONG)&(pConn->bActive), TRUE );
> + OSAL_atomic_exchange( &(pConn->bActive), TRUE );
>
> *context = pConn;
>
> @@ -1034,7 +1035,7 @@
> L5_DISPATCHER_Disconnect( pConn->L5Conn );
> }
>
> - OSAL_atomic_exchange( (LPLONG)&(pConn->bActive), FALSE );
> + OSAL_atomic_exchange( &(pConn->bActive), FALSE );
>
> OSAL_exit_critical_section( &(pConn->csHandlingRequest) );
> OSAL_delete_critical_section(&pConn->csSendReceive);
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/NDnS/APDO/NDnSAgent_APDO_CBs.c
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/NDnS/APDO/NDnSAgent_APDO_CBs.c
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/NDnS/APDO/NDnSAgent_APDO_CBs.c
> 2010-06-07 19:20:49.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/NDnS/APDO/NDnSAgent_APDO_CBs.c
> 2010-10-04 18:40:31.000000000 -0400
> @@ -487,8 +487,8 @@
> lastConnectedStatus = Ndns_GetLastConnectedState();
>
> // Check if the link status has changed
> - if (linkStatus == APDO_linkUp && lastConnectedStatus == FALSE ||
> - linkStatus == APDO_linkDown && lastConnectedStatus == TRUE)
> + if ((linkStatus == APDO_linkUp && lastConnectedStatus == FALSE) ||
> + (linkStatus == APDO_linkDown && lastConnectedStatus == TRUE))
> {
> return; // No change in the link status
> }
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/NDnS/Source/NDnSAgent_Internals.h
>
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/NDnS/Source/NDnSAgent_Internals.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/NDnS/Source/NDnSAgent_Internals.h
> 2010-10-02 03:28:23.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/NDnS/Source/NDnSAgent_Internals.h
> 2010-10-04 18:35:39.000000000 -0400
> @@ -200,8 +200,8 @@
> wmx_ConnectStatus_t connectStatus;
> int DummyForCompilerHappy3;
> TinyFSM_t fsm;
> - L4C_Task scheduledTask;
> - wmx_ScheduledTaskData_t scheduledTaskData;
> + LONG scheduledTask; // Updated using OSAL_atomic_exchange(), so this
> must be a LONG not an L4C_Task
> + wmx_ScheduledTaskData_t scheduledTaskData;
> wmx_Status_t scanStatus;
> wmx_LinkLossType_t linkLossType;
> wmx_ScanType_t currentScanType;
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/ds/driver_broadcom.h
>
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/ds/driver_broadcom.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/ds/driver_broadcom.h
> 2010-06-07 19:20:50.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/ds/driver_broadcom.h
> 2010-10-04 18:40:31.000000000 -0400
> @@ -20,15 +20,15 @@
> typedef unsigned char bool; /* consistent w/BOOL */
>
> /* require default structure packing */
> -#if !defined(__GNUC__)
> -#pragma pack(push,8)
> -#endif
> +//#if !defined(__GNUC__)
> +//#pragma pack(push,8)
> +//#endif
>
> /* enable structure packing */
> #if defined(__GNUC__)
> #define PACKED __attribute__((packed))
> #else
> -#pragma pack(1)
> +#pragma pack(push,1)
> #define PACKED
> #endif
>
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/SupplicantAgent.c
>
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/SupplicantAgent.c
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/SupplicantAgent.c
> 2010-10-02 03:28:24.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Agents/Supplicant/Source/SupplicantAgent.c
> 2010-10-04 18:40:31.000000000 -0400
> @@ -482,7 +482,7 @@
> eap_ctx.eap_config.password_len = 8;
> eap_ctx.eap_config.ca_cert = (u8 *) os_strdup("ca.pem");
> eap_ctx.eap_config.fragment_size = TLS_MAX_SIZE;
> - eap_ctx.eap_config.eap_methods = eap_methods;
> + eap_ctx.eap_config.eap_methods = &eap_methods;
>
> memset(&eap_cb, 0, sizeof(eap_cb));
> eap_cb.get_config = peer_get_config;
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Msc_2.h
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Msc_2.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Msc_2.h
> 2010-06-07 19:20:49.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Msc_2.h
> 2010-10-04 18:41:14.000000000 -0400
> @@ -87,6 +87,7 @@
> UINT32 modelTypeID;
> char modelTypeName[WMX_MODEL_TYPE_NAME_MAX_LENGTH];
> } wmx_ModelType_t, *wmx_pModelType_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// A constant specifying the maximal length of the manufacturer string.
> @@ -102,6 +103,7 @@
> UINT32 manufacturerID;
> char manufacturerName[WMX_MANUFACTURER_NAME_MAX_LENGTH];
> } wmx_Manufacturer_t, *wmx_pManufacturer_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// Definition of a struct that holds the manufacturer ID and string.
> @@ -111,6 +113,7 @@
> {
> UINT32 productID;
> } wmx_DevicePID_t, *wmx_pDevicePID_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// A constant specifying the maximal length of the serial number string.
> @@ -125,6 +128,7 @@
> {
> char serialNumber[WMX_SERIAL_NUMBER_MAX_LENGTH];
> } wmx_SerialNumber_t, *wmx_pSerialNumber_t;
> +#pragma pack( pop )
>
>
>
> @@ -140,6 +144,7 @@
> // UINT32 TotalTxBytes;
> // UINT32 TotalTxPackets;
> //} wmx_Statistics_t, *wmx_pStatistics_t;
> +//#pragma pack( pop )
>
>
> /// <summary>
> @@ -153,6 +158,7 @@
> UINT32 noReceivedBytes;
> UINT32 noTransmittedBytes;
> } wmx_SfStatistics_t, *wmx_pSfStatistics_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// A constant specifying the maximal length of the strings in the
> wmx_DeviceVersion_t struct.
> @@ -171,6 +177,7 @@
> char BoardName[WMX_DEVICE_VERSION_MAX_LENGTH];
> char Software[WMX_DEVICE_VERSION_MAX_LENGTH];
> } wmx_DeviceVersion_t, *wmx_pDeviceVersion_t;
> +#pragma pack( pop )
>
>
>
> @@ -230,4 +237,4 @@
> wmx_Status_t WMX_WRAPPER_API WMX_EXT_CALL_CONV wmx_GetDeviceVersion(
> wmx_pDeviceVersion_t pDeviceVersion );
>
> wmx_Status_t WMX_WRAPPER_API WMX_EXT_CALL_CONV wmx_ResetDevice( );
> -#endif // _WMX_SDK_MSC_2_H
> \ No newline at end of file
> +#endif // _WMX_SDK_MSC_2_H
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_1.h
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_1.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_1.h
> 2010-06-07 19:20:49.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_1.h
> 2010-10-04 18:41:23.000000000 -0400
> @@ -235,6 +235,7 @@
> UINT32 TotalTxBytes;
> UINT32 TotalTxPackets;
> } wmx_Statistics_t, *wmx_pStatistics_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// Type definition for a structure giving a detailed info on a system state.
> @@ -671,4 +672,4 @@
> wmx_Status_t WMX_WRAPPER_API WMX_EXT_CALL_CONV
> wmx_GetSpLockStatus(wmx_pSpLock_t pSpLockStatus);
> wmx_Status_t wmx_CmdSpLockUnLock(wmx_SpLockCode_t SpLockCode);
>
> -#endif // _WMX_SDK_NDS_1_H
> \ No newline at end of file
> +#endif // _WMX_SDK_NDS_1_H
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_3.h
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_3.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_3.h
> 2010-10-02 03:28:23.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_3.h
> 2010-10-04 18:40:31.000000000 -0400
> @@ -110,6 +110,7 @@
> wmx_LinkSpeed_t downLinkSpeed;
> UINT32 agreementLevel;
> } wmx_SLA_t, *wmx_pSLA_t;
> +#pragma pack( pop )
>
> #define WMX_SUBSCRIBER_NAME_MAX_SIZE 100
> #define WMX_SUBSCRIBER_ID_MAX_SIZE 256
> @@ -125,6 +126,7 @@
> BOOL userCredRequired;
> //////////////////
> } wmx_SubscriberInfo_t, *wmx_pSubscriberInfo_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// Type definition for a struct containing information of a specific NSP.
> @@ -149,6 +151,7 @@
> wmx_SubscriberInfo_t subscribers[WMX_NSP_SUBSCRIBERS_MAX_NUM];
> // The list of subscribers associated with this NSP on this device.
> UINT32 numOfSubscribers;
> } wmx_NSP_t, *wmx_pNSP_t;
> +#pragma pack( pop )
>
> // TODO: Add description
> #pragma pack( push, 1 )
> @@ -158,6 +161,7 @@
> UINT32 uriType; //TODO - don't forget to validate the values 0-255
> char text[MAX_SIZE_OF_STRING_BUFFER];
> } wmx_ContactInformation_t, *wmx_pContactInformation_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// Type definition for an enum specifying the possible outcomes of a scan
> cycle.
> @@ -224,6 +228,7 @@
> wmx_LinkSpeed_t downLinkSpeed;
> wmx_BSid_t bsId;
> } wmx_UserLinkStatus_t, *wmx_pUserLinkStatus_t;
> +#pragma pack( pop )
>
> #pragma pack( push, 1 )
> typedef struct _wmx_UserStatistics_t
> @@ -234,6 +239,7 @@
> UINT32 TotalTxBytes;
> UINT32 TotalTxPackets;
> } wmx_UserStatistics_t, *wmx_pUserStatistics_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// A constant specifying the maximal length of a NSPs structs vector (in
> terms of the number of wmx_NSP_t structs the vector can contain).
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_Cmn.h
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_Cmn.h
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_Cmn.h
> 2010-10-02 03:28:23.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/Include/wmxSDK_Nds_Cmn.h
> 2010-10-04 18:40:31.000000000 -0400
> @@ -435,6 +435,7 @@
> wmx_RfStatus_t swRfStatus;
> wmx_RfStatus_t hwRfStatus;
> }wmx_RfSwitchesStatus_t, *wmx_pRfSwitchesStatus_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// A struct in which the API will place information (such as URLs, VoIP
> numbers, �) that are relevant to the
> @@ -446,6 +447,7 @@
> {
> char contactDetails[MAX_CONTACT_DETAILS_SIZE];
> } wmx_APDOContactInfo_t, *wmx_pAPDOContactInfo_t;
> +#pragma pack( pop )
>
> /// <summary>
> /// A struct in which the API will place information which is needed in the
> package update process.
> @@ -460,6 +462,7 @@
> BOOL mandatoryUpdate; /**< (TRUE = mandatory
> FALSE, optional) */
> BOOL warnUser; /**< (TRUE = warn user,
> FALSE = no user warning */
> } wmx_PackageInfo_t, *wmx_pPackageInfo_t;
> +#pragma pack( pop )
>
> typedef enum _wmx_SPLockStatus_t
> {
> @@ -507,5 +510,6 @@
> char fwVersion[MAX_INSTALLAION_VERSION_SIZE];
> char hwVersion[MAX_INSTALLAION_VERSION_SIZE];
> } wmx_InstallationInfo_t, *wmx_pInstallationInfo_t;
> +#pragma pack( pop )
>
> #endif // _WMX_SDK_NDS_CMN_H
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/NDnS/wmxSDK_Coex_1.c
> wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/NDnS/wmxSDK_Coex_1.c
> ---
> wimax-1.5.1.orig//InfraStack/OSAgnostic/WiMax/Wrappers/NDnS/wmxSDK_Coex_1.c
> 2010-06-07 19:20:49.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSAgnostic/WiMax/Wrappers/NDnS/wmxSDK_Coex_1.c
> 2010-10-04 18:40:31.000000000 -0400
> @@ -64,7 +64,7 @@
> if (coexMode == WMX_MODE_CM && UserCall){
> TRACE(TR_MOD_NDNS_AGENT, TR_SEV_NOTICE,
> "SetCoexistanceMode recieved set CM mode in CM mode.");
> if (act_thread_coexHandler!=NULL){
> - OSAL_kill_thread(&act_thread_coexHandler);
> + OSAL_kill_thread(act_thread_coexHandler);
> retStatus = WMX_ST_OK;
> }
> // setting fall to xor key to zero so we never fall to
> xor even when driver falls and brings itself up
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/InfraStackModules/CommonAPIHeaders/WiMaxType.h
>
> wimax-1.5.1/InfraStack/OSDependent/Linux/InfraStackModules/CommonAPIHeaders/WiMaxType.h
> ---
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/InfraStackModules/CommonAPIHeaders/WiMaxType.h
> 2010-06-07 19:20:48.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSDependent/Linux/InfraStackModules/CommonAPIHeaders/WiMaxType.h
> 2010-10-04 18:40:31.000000000 -0400
> @@ -305,7 +305,7 @@
> {
> UINT32 structureSize;
> /**< size of this structure. */
> WIMAX_API_PROFILE_ID profileID;
> /**< profile ID. Profile id 0 is reserve to connection without specifying a
> user account. */
> - char profileName[MAX_SIZE_OF_STRING_BUFFER];
> /**< profile name. */
> + WIMAX_CHAR profileName[MAX_SIZE_OF_STRING_BUFFER];
> /**< profile name. */
> } WIMAX_API_PROFILE_INFO, *WIMAX_API_PROFILE_INFO_P;
>
> /// Device version
> @@ -467,6 +467,8 @@
> } WIMAX_API_INTERFACE_INFO, *WIMAX_API_INTERFACE_INFO_P;
> #endif
>
> +#pragma pack( pop )
> +
> /// The statuses provided by this API can generally be mapped to movements
> along the SDK common state machine. The indications may provide further
> detailed information using the API�s arguments when relevant.
> /// \param[in] pDeviceId - Pointer to Device Identifier passed on open of
> device.
> /// \param[in] deviceStatus - The device Status value
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_basictypes.h
>
> wimax-1.5.1/InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_basictypes.h
> ---
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_basictypes.h
> 2010-06-07 19:20:48.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_basictypes.h
> 2010-10-04 18:35:39.000000000 -0400
> @@ -39,6 +39,7 @@
> #include <string.h>
> #include <ctype.h>
> #include <sys/stat.h>
> +#include <pthread.h>
>
> #if 0
> #include <sys/socket.h>
> @@ -90,7 +91,7 @@
>
> typedef int pid_t;
>
> -typedef int OSAL_thread_t;
> +typedef pthread_t OSAL_thread_t;
>
> typedef void * OSAL_event_t;
>
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_linux_types.h
>
> wimax-1.5.1/InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_linux_types.h
> ---
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_linux_types.h
> 2010-06-07 19:20:48.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_linux_types.h
> 2010-10-04 18:40:31.000000000 -0400
> @@ -105,7 +105,7 @@
>
> typedef unsigned int DWORD;
>
> -typedef int INT_PTR;
> +typedef int * INT_PTR;
>
>
> typedef char INT8;
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_trace.c
> wimax-1.5.1/InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_trace.c
> ---
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_trace.c
> 2010-06-07 19:20:48.000000000 -0400
> +++
> wimax-1.5.1/InfraStack/OSDependent/Linux/OSAL/Primitives/wimax_osal_trace.c
> 2010-10-04 18:40:31.000000000 -0400
> @@ -173,7 +173,7 @@
> }
> }
> // write into file
> - fprintf(log, ch);
> + fprintf(log, "%s", ch);
> // put extra to log next line to build
> //fprintf(log,"\n");
> if (flush == 1)
> diff -Naur
> wimax-1.5.1.orig//InfraStack/OSDependent/Linux/wimaxcu/wimaxcu_scan_op.c
> wimax-1.5.1/InfraStack/OSDependent/Linux/wimaxcu/wimaxcu_scan_op.c
> --- wimax-1.5.1.orig//InfraStack/OSDependent/Linux/wimaxcu/wimaxcu_scan_op.c
> 2010-06-07 19:20:48.000000000 -0400
> +++ wimax-1.5.1/InfraStack/OSDependent/Linux/wimaxcu/wimaxcu_scan_op.c
> 2010-10-04 18:40:31.000000000 -0400
> @@ -468,7 +468,7 @@
>
> } else if (scan_mode == CMD_SCAN_ARG_WIDE) {
> // Get User Connect Mode
> - int userConnectMode;
> + WIMAX_API_CONNECTION_MODE userConnectMode;
> wmxStatus = GetConnectionMode(p_device_id, &userConnectMode);
> if (WIMAX_API_RET_SUCCESS != wmxStatus) {
> PrintWmxStatus(wmxStatus);
> @@ -904,4 +904,4 @@
> }
>
> }
> -}
> \ No newline at end of file
> +}
> _______________________________________________
> wimax mailing list
> [email protected]
> http://lists.linuxwimax.org/listinfo/wimax
_______________________________________________
wimax mailing list
[email protected]
http://lists.linuxwimax.org/listinfo/wimax