Changes between Version 19 and Version 20 of Old/Libmac


Ignore:
Timestamp:
Jun 18, 2006, 11:36:52 PM (18 years ago)
Author:
kishore
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Old/Libmac

    v19 v20  
    144144==== Communication of a subset of wireless interface parameters from the sending end of a network connection to the receiving end, on a per-packet granularity level ====
    145145
    146 The function, \texttt{int mac\_append\_params (struct mac\_ifinfo\_list *if\_ptr, unsigned char direction, int argc, ...)}, is used to request the driver to append interface parameter information, specified by the fourth argument onwards. The first argument is the pointer to the struct mac\_ifinfo\_list that specifies the interface to which, a call to this function, applies. All outgoing/incoming frames on the specified interface will have the specified parameters appended to them. The appending of parameters can also be turned off. The second argument is a variable, direction, that indicates whether parameters should be appended on outgoing and/or incoming frames. The third argument is the number of arguments that follow after this one. Each argument that follows corresponds to the key of a parameter that needs to be appended.
     146The function, int mac_append_params (struct mac_ifinfo_list *if_ptr, unsigned char direction, int argc, ...), is used to request the driver to append interface parameter information, specified by the fourth argument onwards. The first argument is the pointer to the struct mac_ifinfo_list that specifies the interface to which, a call to this function, applies. All outgoing/incoming frames on the specified interface will have the specified parameters appended to them. The appending of parameters can also be turned off. The second argument is a variable, direction, that indicates whether parameters should be appended on outgoing and/or incoming frames. The third argument is the number of arguments that follow after this one. Each argument that follows corresponds to the key of a parameter that needs to be appended.
    147147
    148 \subsection{Reception of the entire 802.11 frame, when the receiver is in RFMON mode}
     148==== Reception of the entire 802.11 frame, when the receiver is in RFMON mode ====
    149149
    150 The function, \texttt{int mac\_promisc\_recv (unsigned char **frame, unsigned short
    151 *frame\_len, unsigned char **send\_params, unsigned char **recv\_params, struct mac\_
    152 ifinfo\_list *q)}, is used to receive an 802.11 frame, in RFMON mode, on an interface
    153 specified by the user, and retrieve pointers to the frame, length and parameters.
    154 Its arguments include pointers to store the entire frame, length of the frame, sending side
    155 parameters that have been appended, receiving side parameters that have been appended
    156 and the structure that specifies the interface to which a call to this function applies. \newline
     150The function, int mac_promisc_recv (unsigned char **frame, unsigned short *frame_len, unsigned char **send_params, unsigned char **recv_params, struct mac_ifinfo_list *q)}, is used to receive an 802.11 frame, in RFMON mode, on an interface specified by the user, and retrieve pointers to the frame, length and parameters. Its arguments include pointers to store the entire frame, length of the frame, sending side
     151parameters that have been appended, receiving side parameters that have been appended and the structure that specifies the interface to which a call to this function applies.
    157152
    158 Note that parameters are appended to all incoming 802.11 frames and current version of the library
    159 does not parse the received frame to extract send-side parameter information that is appended.
     153Note that parameters are appended to all incoming 802.11 frames and current version of the library does not parse the received frame to extract send-side parameter information that is appended.
    160154
    161 Detailed documentation on all these functions and their implementation details are included in every
    162 release, which can be downloaded from /common/Orbit/repository. The interested reader is directed
     155Detailed documentation on all these functions and their implementation details are included in every release, which can be downloaded from the ORBIT SVN repository. The interested reader is directed
    163156to these for more information.
    164 
    165157
    166158The architecture diagram is shown below - Libmac uses open-source libraries [http://www.tcpdump.org/ libpcap], for frame capture and [http://www.packetfactory.net/libnet/ libnet], for frame injection.