Success! Re: [PATCH] wimax/wimax-network-service: Assorted 64-bit fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2010-10-05 at 14:39 -0400, Paul Donohue wrote: 
> 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.

Yay!! Congratulations

> 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

Actually all this is missing at the driver level too. Never bothered to
look into it (other things being more urgent).

> 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 <wimax at PaulSD.com>
> > 
> > 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
> > wimax at linuxwimax.org
> > http://lists.linuxwimax.org/listinfo/wimax
> _______________________________________________
> wimax mailing list
> wimax at linuxwimax.org
> http://lists.linuxwimax.org/listinfo/wimax





[Index of Archives]     [Linux Kernel]     [Linux Wireless]     [Linux Bluetooth]     [Linux Netdev]     [Linux Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux