1. 19 7月, 2007 1 次提交
  2. 08 6月, 2007 1 次提交
  3. 03 12月, 2006 4 次提交
  4. 01 10月, 2006 1 次提交
  5. 23 9月, 2006 2 次提交
    • T
      [GENL]: Provide more information to userspace about registered genl families · eb328111
      Thomas Graf 提交于
      Additionaly exports the following information when providing
      the list of registered generic netlink families:
        - protocol version
        - header size
        - maximum number of attributes
        - list of available operations including
            - id
            - flags
            - avaiability of policy and doit/dumpit function
      
      libnl HEAD provides a utility to read this new information:
      
      	0x0010 nlctrl version 1
      	    hdrsize 0 maxattr 6
      	      op GETFAMILY (0x03) [POLICY,DOIT,DUMPIT]
      	0x0011 NLBL_MGMT version 1
      	    hdrsize 0 maxattr 0
      	      op unknown (0x02) [DOIT]
      	      op unknown (0x03) [DOIT]
      	      ....
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eb328111
    • T
      [NETLINK]: Add notification message sending interface · d387f6ad
      Thomas Graf 提交于
      Adds nlmsg_notify() implementing proper notification logic. The
      message is multicasted to all listeners in the group. The
      applications the requests orignates from can request a unicast
      back report in which case said socket will be excluded from the
      multicast to avoid duplicated notifications.
      
      nlmsg_multicast() is extended to take allocation flags to
      allow notification in atomic contexts.
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d387f6ad
  6. 15 7月, 2006 1 次提交
  7. 14 1月, 2006 1 次提交
  8. 04 1月, 2006 1 次提交
  9. 10 11月, 2005 1 次提交
    • T
      [NETLINK]: Generic netlink family · 482a8524
      Thomas Graf 提交于
      The generic netlink family builds on top of netlink and provides
      simplifies access for the less demanding netlink users. It solves
      the problem of protocol numbers running out by introducing a so
      called controller taking care of id management and name resolving.
      
      Generic netlink modules register themself after filling out their
      id card (struct genl_family), after successful registration the
      modules are able to register callbacks to command numbers by
      filling out a struct genl_ops and calling genl_register_op(). The
      registered callbacks are invoked with attributes parsed making
      life of simple modules a lot easier.
      
      Although generic netlink modules can request static identifiers,
      it is recommended to use GENL_ID_GENERATE and to let the controller
      assign a unique identifier to the module. Userspace applications
      will then ask the controller and lookup the idenfier by the module
      name.
      
      Due to the current multicast implementation of netlink, the number
      of generic netlink modules is restricted to 1024 to avoid wasting
      memory for the per socket multiacst subscription bitmask.
      Signed-off-by: NThomas Graf <tgraf@suug.ch>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      482a8524