Commit Graph

12 Commits

Author SHA1 Message Date
Ralf Corsepius
d239d9866a Remove struct file, soo_ioctl, soo_select, soo_stat, getsock (Unused). 2009-02-09 22:18:30 +00:00
Ralf Corsepius
8fc471a554 Include <rtems/bsd/sys/queue.h> instead of <sys/queue.h>. 2007-05-10 05:07:28 +00:00
Ralf Corsepius
3bf2241fd2 Cosmetics from FreeBSD. 2007-03-25 07:33:20 +00:00
Ralf Corsepius
51cda9a4cd Remove __P(). 2007-03-18 13:31:48 +00:00
Joel Sherrill
ae5a79c349 2006-08-30 Joel Sherrill <joel@OARcorp.com>
* libcsupport/include/sys/ioccom.h, libnetworking/kern/uipc_socket2.c,
	libnetworking/net/ethernet.h, libnetworking/net/if.h,
	libnetworking/net/if_ethersubr.c, libnetworking/net/if_ppp.c,
	libnetworking/net/if_pppvar.h, libnetworking/net/ppp_tty.c,
	libnetworking/net/pppcompress.c, libnetworking/net/slcompress.c,
	libnetworking/netinet/in.h, libnetworking/netinet/ip_icmp.c,
	libnetworking/netinet/tcp.h, libnetworking/netinet/tcp_seq.h,
	libnetworking/sys/protosw.h, libnetworking/sys/socketvar.h: Remove
	warnings. Most of the warnings were 16/32 bit integer sizing issues.
	Some constants had L appended, some had casts add, some types were
	changed to reflect a bit width requirement.
2006-08-30 17:20:33 +00:00
Joel Sherrill
78219ad15b 2004-12-02 Joel Sherrill <joel@OARcorp.com>
* libnetworking/kern/kern_sysctl.c, libnetworking/netinet/ip_mroute.c,
	libnetworking/sys/socketvar.h: Remove warnings.
2004-12-02 20:24:30 +00:00
Ralf Corsepius
dac1edba93 2004-12-02 Ralf Corsepius <ralf.corsepius@rtems.org>
* libnetworking/net/radix.c, libnetworking/net/radix.h,
	libnetworking/net/route.h, libnetworking/netinet/if_ether.h,
	libnetworking/netinet/in_var.h, libnetworking/netinet/tcp_timer.h,
	libnetworking/netinet/udp_usrreq.c, libnetworking/netinet/udp_var.h,
	libnetworking/sys/callout.h, libnetworking/sys/socketvar.h,
	libnetworking/sys/sysctl.h: Cosmetics from FreeBSD.
2004-12-02 18:42:53 +00:00
Ralf Corsepius
d589e75279 2004-04-26 Ralf Corsepius <ralf_corsepius@rtems.org>
* libnetworking/netinet/igmp_var.h: Cosmetic updates from FreeBSD.
	* libnetworking/sys/sysctl.h: Update from FreeBSD.
	* libnetworking/sys/socketvar.h: Update from FreeBSD.
2004-04-26 11:46:52 +00:00
Ralf Corsepius
dc28f16d8e Use -D_KERNEL instead of -DKERNEL for greater FreeBSD compliance. 2004-04-20 12:28:19 +00:00
Joel Sherrill
a6f3cff703 Patch from Ian Lance Taylor <ian@airs.com>:
The select function is not particularly efficient when dealing with a
    large number of sockets.  The application has to build a big set of
    bits and pass it in.  RTEMS has to look through all those bits and see
    what is ready.  Then the application has to look through all the bits
    again.

    On the other hand, when using RTEMS, the select function is needed
    exactly when you have a large number of sockets, because that is when
    it becomes prohibitive to use a separate thread for each socket.

    I think it would make more sense for RTEMS to support callback
    functions which could be invoked when there is data available to read
    from a socket, or when there is space available to write to a socket.

    Accordingly, I implemented them.

    This patch adds two new SOL_SOCKET options to setsockopt and
    getsockopt: SO_SNDWAKEUP and SO_RCVWAKEUP.  They take arguments of
    type struct sockwakeup:

    struct  sockwakeup {
        void    (*sw_pfn) __P((struct socket *, caddr_t));
        caddr_t sw_arg;
    };

    They are used to add or remove a function which will be called when
    something happens for the socket.  Getting a callback doesn't imply
    that a read or write will succeed, but it does imply that it is worth
    trying.

    This adds functionality to RTEMS which is somewhat like interrupt
    driven socket I/O on Unix.

    After the patch to RTEMS, I have appended a patch to
    netdemos-19990407/select/test.c to test the new functionality and
    demonstrate one way it might be used.  To run the new test instead of
    the select test, change doSocket to call echoServer2 instead of
    echoServer.
1999-06-11 14:11:44 +00:00
Joel Sherrill
847375f3ad Patch from Eric Norum <eric@skatter.usask.ca>:
1) Socket timeout field changed from `short' to `long'.  This makes longer
       timeouts possible.  With a 1 kHz system clock the old system allowed
       timeouts only up to a little over 30 seconds!  This change is a
       slightly cleaned-up version of the patch proposed by Ian Lance Taylor.

    2) Major changes to BOOTP/DHCP reply handling.  Now supports much of
       RFC2132.  These changes were done at the request of, and with the
       assistance of, Erik Ivanenko.

    If you're making changes, you might want to change the network
    supplement  Essentially just do a global search and replace of BOOTP
    with BOOTP/DHCP.
1998-11-19 17:35:49 +00:00
Joel Sherrill
39e6e65a2c Base files 1998-08-19 21:32:28 +00:00