|
From: <sat...@us...> - 2010-03-11 12:19:19
|
Revision: 231
http://w-meter.svn.sourceforge.net/w-meter/?rev=231&view=rev
Author: sathakselva
Date: 2010-03-11 12:18:52 +0000 (Thu, 11 Mar 2010)
Log Message:
-----------
QoS Null Data frame added
Modified Paths:
--------------
frame_injection_g/trunk/src/data_dataframe_cpp.cpp
frame_injection_g/trunk/src/data_qos_data_cpp.cpp
Modified: frame_injection_g/trunk/src/data_dataframe_cpp.cpp
===================================================================
--- frame_injection_g/trunk/src/data_dataframe_cpp.cpp 2010-03-11 12:02:58 UTC (rev 230)
+++ frame_injection_g/trunk/src/data_dataframe_cpp.cpp 2010-03-11 12:18:52 UTC (rev 231)
@@ -436,7 +436,6 @@
}
else if ( radiobutton_user_defined->isChecked()==0 )
{
- int msdu_size=lineedit_msdu_size->text().toInt();
unsigned char temp_char_arr[msdu_size];
for ( int i=0; i<msdu_size; i++ )
Modified: frame_injection_g/trunk/src/data_qos_data_cpp.cpp
===================================================================
--- frame_injection_g/trunk/src/data_qos_data_cpp.cpp 2010-03-11 12:02:58 UTC (rev 230)
+++ frame_injection_g/trunk/src/data_qos_data_cpp.cpp 2010-03-11 12:18:52 UTC (rev 231)
@@ -407,28 +407,36 @@
for ( i =0;i < size_ctrl_hdr_arr1; i++ )
control_header_arr[i]=control_header_arr1[i];
-
- if ( radiobutton_user_defined->isChecked()==1 )
+
+ int msdu_size=lineedit_msdu_size->text().toInt();
+ if (msdu_size == 0 )
{
- int temp_sum=size_ctrl_hdr_arr1+temp_payload_size;
-
- //reallocation of control_header_arr
- control_header_arr= ( unsigned char* ) realloc( control_header_arr, temp_sum * sizeof( unsigned char ) );
- if ( control_header_arr == NULL )
- {
- printf( "Unable to allocate memory...\n" );
- exit( 1 );
- }
- //including payload to control_header_arr array
- for ( int r=0;r<=temp_payload_size;r++ )
- control_header_arr[size_ctrl_hdr_arr1+r]=str_payload[r];
-
- func_qos_call( control_header_arr,temp_sum );
+ /* Payload size is 0, then make it NULL frame */
+ control_header_arr[0] |= 0x40;
+ func_qos_call( control_header_arr, size_ctrl_hdr_arr1 );
}
else
- if ( radiobutton_user_defined->isChecked()==0 )
+ {
+ // Payload is not NULL
+ if ( radiobutton_user_defined->isChecked()==1 )
{
- int msdu_size=lineedit_msdu_size->text().toInt();
+ int temp_sum=size_ctrl_hdr_arr1+temp_payload_size;
+
+ //reallocation of control_header_arr
+ control_header_arr= ( unsigned char* ) realloc( control_header_arr, temp_sum * sizeof( unsigned char ) );
+ if ( control_header_arr == NULL )
+ {
+ printf( "Unable to allocate memory...\n" );
+ exit( 1 );
+ }
+ //including payload to control_header_arr array
+ for ( int r=0;r<=temp_payload_size;r++ )
+ control_header_arr[size_ctrl_hdr_arr1+r]=str_payload[r];
+
+ func_qos_call( control_header_arr,temp_sum );
+ }
+ else
+ {
int temp_sum=size_ctrl_hdr_arr1+msdu_size;
unsigned char temp_char_arr[msdu_size];
for ( int i=0;i<msdu_size;i++ )
@@ -447,6 +455,7 @@
func_qos_call( control_header_arr,temp_sum );
}
+ }
}
else
KMessageBox::error( this,"MSDU size should be less than 2305" );
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|