summaryrefslogtreecommitdiffstats
path: root/cpukit/libnetworking (follow)
Commit message (Collapse)AuthorAgeFilesLines
* rtems: Avoid Giant lock for semaphoresSebastian Huber2016-05-021-5/+2
| | | | Update #2555.
* network: Fix warningsSebastian Huber2016-04-2215-15/+38
|
* network: Ensure matching syscall prototypesSebastian Huber2016-04-226-26/+117
| | | | Ensure that kernel and user space system call protoypes are identical.
* network: Delete unused in4_cksum()Sebastian Huber2016-04-223-125/+0
|
* score: Remove id parameter _CORE_mutex_Seize()Sebastian Huber2016-04-211-1/+0
| | | | Parameter was unused.
* score: Compatibility with latest NewlibSebastian Huber2016-04-081-2/+2
|
* network: Quirk for Newlib compatibilitySebastian Huber2016-04-071-0/+1
| | | | | Newlib provides now a declration for random() in <stdlib.h>. This confilicts with the define in <rtems/rtems_bsdnet_internal.h>.
* score: Rework MP thread queue callout supportSebastian Huber2016-04-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The thread queue implementation was heavily reworked to support SMP. This broke the multiprocessing support of the thread queues. This is fixed by this patch. A thread proxy is unblocked due to three reasons 1) timeout, 2) request satisfaction, and 3) extraction. In case 1) no MPCI message must be sent. This is ensured via the _Thread_queue_MP_callout_do_nothing() callout set during _Thread_MP_Allocate_proxy(). In case 2) and 3) an MPCI message must be sent. In case we interrupt the blocking operation during _Thread_queue_Enqueue_critical(), then this message must be sent by the blocking thread. For this the new fields Thread_Proxy_control::thread_queue_callout and Thread_Proxy_control::thread_queue_id are used. Delete the individual API MP callout types and use Thread_queue_MP_callout throughout. This type is only defined in multiprocessing configurations. Prefix the multiprocessing parameters with mp_ to ease code review. Multiprocessing specific parameters are optional due to use of a similar macro pattern. There is no overhead for non-multiprocessing configurations.
* network: Special case for RTEMS_MULTIPROCESSINGSebastian Huber2016-03-291-0/+12
| | | | Allow network tasks to run with priority 0 (PRIORITY_PSEUDO_ISR).
* libnetworking/sys/libkern.h: Disable non-POSIX prototype that is actually unusedJoel Sherrill2016-03-241-0/+2
|
* Chase Newlib sys/types.h / sys/select.h changesNick Withers2016-01-186-23/+13
|
* basdefs.h: Add and use RTEMS_UNUSEDSebastian Huber2015-10-261-2/+2
|
* cpukit/libnetworking/rtems/rtems_dhcp.c: Fix compilation errorMartin Galvan2015-09-031-1/+1
| | | | | | | | Apparently 'free' is defined as a macro which takes two arguments and calls rtems_bsdnet_free. When fixing #2405 I added a missing 'free' but didn't notice it was non-standard. Closes #2410.
* cpukit/libnetworking/rtems/rtems_dhcp.c: Fix leak on realloc failure for ↵Martin Galvan2015-09-031-5/+13
| | | | | | dhcp_hostname. Closes #2405.
* tftpDriver: close() false errorMichael Davidsaver2015-07-291-1/+3
| | | | closes #2376.
* libnetworking: Send the hostname if set in the network configuration.Chris Johns2015-07-141-2/+16
| | | | | This allows a suitably configured DHCP server with DDNS to enter the name into the DNS table making it addressiable via it's host name.
* timecounter: Use in RTEMSAlexander Krutwig2015-05-202-5/+2
| | | | | | | | Replace timestamp implementation with FreeBSD bintime and timecounters. New test sptests/sptimecounter02. Update #2271.
* score: Fine grained locking for mutexesSebastian Huber2015-05-191-12/+7
| | | | Update #2273.
* score: _Objects_Get_isr_disable()Sebastian Huber2015-04-211-3/+3
| | | | | | | Use ISR_lock_Context instead of ISR_Level to allow use of ISR locks for low-level locking. Update #2273.
* network: Avoid clash with FreeBSD <sys/time.h>Sebastian Huber2015-03-092-4/+6
|
* Panic on RTEMS_FAST_MUTEX network semaphore claim/release.Chris Johns2015-02-241-1/+8
| | | | | | | Fix the code to panic rather than perform a bad access if the network semaphore is accessed without the stack being intialised. Closes #2229.
* networking: alignment exception in ioctl(SIOCGIFCONF)Till Straumann2015-02-231-11/+12
| | | | | Access memory using a byte stream when copying to avoid unaligned access. update #1401
* sys/socket.h: Include <sys/types.h> for ssize_tJoel Sherrill2015-02-121-1/+1
| | | | closes 2245
* Filesystem: Delete unused fsmountme_h handlerSebastian Huber2015-02-092-2/+0
|
* Filesystem: Use rtems_libio_iop_to_descriptor()Sebastian Huber2015-02-041-1/+1
| | | | | Drop parameter check from previously unused rtems_libio_iop_to_descriptor().
* sys/socket.h: Add include of <sys/_types.h> for ssize_tJoel Sherrill2015-01-231-0/+1
| | | | | | | | | This was needed to make it possible to only include <sys/socket.h> for the methods in this file in compliance with the POSIX specification. This was identified by the Open Group FACE Conformance Test Suite. Close 2245.
* libnetworking: Fix memset() callSebastian Huber2015-01-231-1/+1
| | | | Close #2244.
* Filesystem: Delete node type operationSebastian Huber2015-01-222-15/+8
| | | | Use the fstat handler instead.
* libnetworking: Fix close of active socketsSebastian Huber2015-01-205-66/+94
| | | | | | | Send a special event to notify tasks waiting for a socket state change in case this socket gets closed. This prevents a use after free. Close #785.
* libnetworking: Delete dead codeSebastian Huber2015-01-204-10/+0
| | | | The so_uid is always 0 in RTEMS.
* libnetworking: Avoid spurious event deliverySebastian Huber2015-01-201-1/+0
| | | | | The so_pgid field contains the task identifier if this task waits for the SOSLEEP_EVENT event. Do not inherit this from the accept socket.
* libnetworking: Simplify sbwait()Sebastian Huber2015-01-151-11/+1
|
* libnetworking: Make rtems_dhcp_failsafe() run time configurablePeter Dufault2014-12-232-44/+91
| | | | | | | | | | | | | rtems_dhcp_failsafe() can be configured at compile time with various options. This change makes it possible to instead configure it at runtime. This will make it marginally larger. I haven't measured the difference but I'll guess it's in the lower hundreds of bytes. The change could be modified to leave it either compile time or run time configurable, I prefer the simplicity of a single method. closes #1905
* net: Add network task affinity configDaniel Cederman2014-12-023-0/+55
| | | | | | | This patch adds a default network tasks CPU affinity configuration option. The network drivers have the option to create their own daemon tasks with a custom CPU affinity set, or rely on the default set.
* libnetworking: Fix the sethostname decl to match newlib.Chris Johns2014-10-313-3/+3
|
* ppp: PR1943: Avoid NULL pointer accessSebastian Huber2014-10-081-8/+2
| | | | | | | Waiting for mbufs at this level is a bad solution. It would be better to try to allocate a new mbuf chain before we hand over the current mbuf chain to the upper layer. In case the allocation fails we should drop the current packet and use its mbuf chain for a new packet.
* ppp: Add ppp_unit()Sebastian Huber2014-10-081-15/+21
| | | | This makes porting to the new network stack easier.
* ppp: Nothing to transmit hint for Termios driverSebastian Huber2014-10-071-1/+10
|
* termios: Partially hide rtems_termios_ttySebastian Huber2014-10-072-3/+4
| | | | | | | Move interrupt lock to device context and expose only this structure to the read, write and set attributes device handler. This makes these device handler independent of the general Termios infrastructure suitable for direct use in printk() support.
* pppd: Fix warningsSebastian Huber2014-09-301-1/+11
|
* libnetworking: Update due to Termios changesSebastian Huber2014-09-302-3/+3
|
* Add configuration to detect toolset has sigaltstack() prototypeJoel Sherrill2014-08-201-4/+6
|
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-217-7/+7
|
* libnetworking: TypoSebastian Huber2014-03-061-1/+1
|
* Don't use unsafe buffer operationsNick Withers2014-01-201-18/+12
| | | | | | Don't use unsafe buffer operations, averting (stack) buffer overflow when the syslog message length (including Facility and Level encoding) would exceed 199 characters
* NTP: Sync time correctly when receiving broadcast updatesJim Panetta2014-01-091-3/+4
| | | | | | | | | | | | | | | 1) The value of rtems_bsdnet_ntpserver_count is equal to 0 when no server is set, so the check for (rtems_bsdnet_ntpserver_count < 0) in rtems_bsdnet_get_ntp() is wrong. The check should be "<= 0". 2) Binding the listening socket port to 0 does not work. Packets appear on the interface, but the recvfrom in tryServer() never returns. Changing this to the well known NTP socket 123 allows the packets to be seen. 3) In tryServer(), an explicit check for NTP version 3 packets is made. If the NTP server is version 4, this check fails even though the packets seem to be the right shape.
* Filesystem: Use default kqfilter and poll handlerSebastian Huber2013-12-203-0/+8
|
* Filesystem: Add readv/writev handlersSebastian Huber2013-12-203-14/+22
| | | | | | | | | The readv() and writev() support was implemented in terms of multiple calls to the read and write handlers. This imposes a problem on device files which use an IO vector as single request entity. For example a low-level network device (e.g. BPF(4)) may use an IO vector to create one frame from multiple protocol layers each with its own IO vector entry.
* PR2161: Set the source port to SYSLOG in the syslog socket.Chris Johns2013-12-101-1/+1
|
* select.h, rtems_select.c, nds select: Add restrict keywordDaniel Ramirez2013-11-202-5/+6
|