Changes between Version 21 and Version 22 of Old/Libmac


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

Legend:

Unmodified
Added
Removed
Modified
  • Old/Libmac

    v21 v22  
    9494
    9595The choice of using these particular libraries was motivated by the stable nature of the executables, the open-source nature of the source code, their active maintenance and the presence of mailing lists and tutorials. In addition, these libraries have been thoroughly tested by a wide variety of open-source and commercial products. They were written primarily because of the drawbacks of the packet sockets API and their advantages include:
    96 * Providing the user with high-level and simplified interface and hiding the complexity of underlying system from application programmer.
    97 * Portability across multiple architectures.
     96 * Providing the user with high-level and simplified interface and hiding the complexity of underlying system from application programmer.
     97 * Portability across multiple architectures.
    9898
    99 The figure below shows how the framework will be built on top of the libnet~\cite{Libnet+doc} and libpcap~\cite{Libpcap+doc} libraries, which in turn will be used in the lowest module. This diagram also shows how the envisioned framework will co-exist in parallel with the TCP/UDP sockets API, which uses the networking protocols implemented in the kernel.
     99The figure below shows how the framework will be built on top of the libnet and libpcap libraries, which in turn will be used in the lowest module. This diagram also shows how the envisioned framework will co-exist in parallel with the TCP/UDP sockets API, which uses the networking protocols implemented in the kernel.
    100100
    101101[[Image(p3.png)]] [[BR]]
     
    140140The function, int mac_get_params (struct mac_params *h, struct mac_ifinfo_list *if_ptr, int argc, ...), is used to request the driver to return information on interface parameters, specified by the fourth argument onwards. The first argument is the pointer to the mac_params structure, where information, on retrieved parameter values, is to be stored. The second one is a pointer to the struct mac_ifinfo_list that specifies the interface to which, a call to this function, applies. The parameter settings on the specified interface will be returned. The third argument is the number of arguments that follow after this one. Each argument that follows corresponds to the key of a parameter.
    141141
    142 The function, int mac_set_params (struct mac_params *h, struct mac_ifinfo_list *if_ptr, int argc, ...), is used to request the driver to operate on interface parameter settings, specified by the fourth argument onwards. The first argument is the pointer to the mac\_params structure, where information, on parameter settings, is stored. The second one is a pointer to the struct mac_ifinfo_list that specifies the interface to which, a call to this function, applies. The parameter values on the specified interface will be set. The third argument is the number of (key,value) pairs that follow after this one.
     142The function, int mac_set_params (struct mac_params *h, struct mac_ifinfo_list *if_ptr, int argc, ...), is used to request the driver to operate on interface parameter settings, specified by the fourth argument onwards. The first argument is the pointer to the mac_params structure, where information, on parameter settings, is stored. The second one is a pointer to the struct mac_ifinfo_list that specifies the interface to which, a call to this function, applies. The parameter values on the specified interface will be set. The third argument is the number of (key,value) pairs that follow after this one.
    143143
    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 ====