]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Major overhaul and cleanup of ng_source node.
authorglebius <glebius@FreeBSD.org>
Tue, 5 Apr 2005 17:22:05 +0000 (17:22 +0000)
committerglebius <glebius@FreeBSD.org>
Tue, 5 Apr 2005 17:22:05 +0000 (17:22 +0000)
commitbfd07fdc7196218425382637490d0d940dd4d920
tree372d7e839fab2fa0350859e497b8a77a69abdb74
parentb24803b06b5183f62ba74bb0a23a8c3feee6245f
Major overhaul and cleanup of ng_source node.

Functional changes:
- Cut struct source_hookinfo. Just use hook_p pointer.
- Remove "start_now" command. "start" command now requires number of
  packets to send as argument. "start" command actually starts sending.
  Move the code that actually starts sending from ng_source_rcvmsg()
  to ng_source_start().
- Remove check for NG_SOURCE_ACTIVE in ng_source_stop(). We can be called
  with flag cleared (see begin of ng_source_intr()).
- If NG_SEND_DATA_ONLY() use log(LOG_DEBUG) instead of printf(). Otherwise
  we will *flood* console.
- Add ng_connect_t method, which sends NGM_ETHER_GET_IFNAME command
  to "output" hook. Cut ng_source_request_output_ifp(). Refactor
  ng_source_store_output_ifp() to use ifunit() and don't muck through
  interface list.
- Add "setiface" command, which gives ability to configure interface
  in case when ng_source_connect() failed. This happens, when we are not
  connected directly to ng_ether(4) node.
- Remove KASSERTs, which can never fire.
- Don't check for M_PKTHDR in rcvdata method. netgraph(4) does this
  for us.

Style:
- Assign sc_p = NG_NODE_PRIVATE(node) in declaration, to be
  consistent with style of other nodes.
- Sort variables.
- u_intXX -> uintXX.
- Dots at ends of comments.

Sponsored by:   Rambler
sys/netgraph/ng_source.c
sys/netgraph/ng_source.h