cvs commit: src/sys/kern uipc_socket.c

David Malone dwmalone at FreeBSD.org
Sun Jul 18 12:10:37 PDT 2004


dwmalone    2004-07-18 19:10:36 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             uipc_socket.c 
  Log:
  The recent changes to control message passing broke some things
  that get certain types of control messages (ping6 and rtsol are
  examples). This gets the new code closer to working:
  
          1) Collect control mbufs for processing in the controlp ==
          NULL case, so that they can be freed by externalize.
  
          2) Loop over the list of control mbufs, as the externalize
          function may not know how to deal with chains.
  
          3) In the case where there is no externalize function,
          remember to add the control mbuf to the controlp list so
          that it will be returned.
  
          4) After adding stuff to the controlp list, walk to the
          end of the list of stuff that was added, incase we added
          a chain.
  
  This code can be further improved, but this is enough to get most
  things working again.
  
  Reviewed by:    rwatson
  
  Revision  Changes    Path
  1.205     +16 -12    src/sys/kern/uipc_socket.c


More information about the cvs-all mailing list