Commit Graph

697 Commits

Author SHA1 Message Date
Kha Vo
51facd904d bsearch: Fix an IAR compilation problem 2016-04-03 13:56:59 -06:00
Gregory Nutt
53a721cdd7 Fix a cloned error in both sq_cat() and dq_cat() 2016-03-23 14:48:50 -06:00
Gregory Nutt
4a962a36dd Add library functions to concatenate and move lists. Add scheduler function to merge prioritized function to merge prioritized lists (not yet used). 2016-03-23 08:00:58 -06:00
Gregory Nutt
24468128de TLS: Simplify 2016-03-11 07:17:32 -06:00
Gregory Nutt
6af9b23df5 libc/netdb: Fix some compile issues when IPv6 is enabled 2016-02-25 13:59:42 -06:00
Gregory Nutt
0fb035f76b Standardize some naming in code section comments 2016-02-21 18:09:04 -06:00
Gregory Nutt
143d287f11 Fix some missing header file inclusions and a misplaced semi-colon from recent commits 2016-02-21 11:27:55 -06:00
Gregory Nutt
f3356fee5b SMP: Add macros to CPU set manipulation to sched.h 2016-02-20 18:45:07 -06:00
Gregory Nutt
883a1adfe2 Implement sched_setaffinity() and sched_getaffinity() 2016-02-19 19:18:54 -06:00
Gregory Nutt
28d138c584 Add files that I forgot to add in the last commit 2016-02-19 17:58:47 -06:00
Gregory Nutt
a633353ec3 Add a CPU affinity set to the TCB if SMP is enable and use this CPU set as a mask for determining which CPUs the thread may run on. Add an affinity field to the attrributes to permit controlling which CPUs a pthread may run on. Implements pthread_att_setaffinity_np() and pthread_attr_getaffinity_np(). 2016-02-19 17:33:35 -06:00
Gregory Nutt
384e51cb05 Add some additional schedule instrumentation 2016-02-16 15:21:45 -06:00
Gregory Nutt
046e39e2c6 nuttx/mm and libc: Replace irqsave() with enter_critical_section(); replace irqrestore() with leave_critical_section() 2016-02-14 08:57:01 -06:00
Gregory Nutt
68ee9bcaed Refresh modules + plus minor clean-up from previous commits 2016-02-08 15:13:14 -06:00
Gregory Nutt
8a9fa634bf syslog: If syslog timestamping is enabled, don't try to get the time if the timer hardware has not yet been initialized. 2016-02-05 08:36:43 -06:00
Gregory Nutt
eac271413f Add more 32-bit math operations; Update ChangeLog 2016-01-25 11:19:25 -06:00
Gregory Nutt
047ed9e543 Add some utilities to support 64-bit math operations on platforms that do not support long long types. Not yet used anywhere 2016-01-25 09:56:00 -06:00
=?UTF-8?B?6ZmI5p6X6aOe?=
0e3cd129ae Fix some issues with strcasecmp() conditional compilation and with memccpy() return value 2016-01-24 12:54:32 -06:00
=?UTF-8?Q?Manuel_St=c3=bchn?=
2bacc40350 Fix mismatched prototype error in work_queue() 2016-01-24 12:48:24 -06:00
Gregory Nutt
9ece46e917 Costmetic update 2016-01-23 11:18:39 -06:00
Gregory Nutt
f348e68069 Update to use 64-bit timer when available 2016-01-21 11:54:26 -06:00
Gregory Nutt
a60a822ef2 Separate TEA encryption and decryption to separate files 2016-01-19 16:46:25 -06:00
Gregory Nutt
f849116a0b Add implementatino of Tiny Encryption Algorithm 2016-01-19 16:37:45 -06:00
Gregory Nutt
2a5c7e9a92 resolv.conf: Add support for OpenBSD style resolv.conf syntax where a non-standard DNS server port can be specified using a backet syntax. 2016-01-14 17:55:53 -06:00
Gregory Nutt
300d34f029 netdb: resolv.conf logic is functional 2016-01-14 15:12:42 -06:00
Gregory Nutt
1a8531c951 netdb: Extend dns_query so that it can handle multiple nameserver addresses 2016-01-14 14:18:19 -06:00
Gregory Nutt
9097425203 netdb: Separate lib_dnsclient.c into lib_dnsbind.c and lib_dnsquery.c 2016-01-14 10:30:47 -06:00
Gregory Nutt
62f04d98c1 netdb: Move DNS initialization and cache logic to separate files 2016-01-14 10:17:15 -06:00
Gregory Nutt
0889963b50 resolv.conf: Fix some basic compilation issues. Logic still not complete. 2016-01-14 08:32:20 -06:00
Gregory Nutt
a7acb45ca6 Add logic misssing from dns_add_server 2016-01-13 16:29:50 -06:00
Gregory Nutt
b112d8fddc DNS: A little more resolv.conf logic. Still not complete. 2016-01-13 16:02:23 -06:00
Gregory Nutt
8e9f884eb7 Step 1 in /etc/resolv.conf support 2016-01-13 15:06:44 -06:00
Gregory Nutt
1608b7c33f Some networking logic was used helpers from apps/netutils. Not good. Quick fix is to duplicate logic 2016-01-09 15:56:08 -06:00
Dimitry Kloper
06d83c6261 Introduce support for Atmel toolchain in-flash strings
Atmel toolchain AVR compiler provides a transparent in-flash object support using __flash and __memx symbols. The former indicates to compiler that this is a flash-based object.  The later used with pointer indicates that the referenced object may reside either in flash or in RAM. The compiler automatically makes 32-bit pointer with flag indicating whether referenced object is in flash or RAM and generates code to access either in run-time. Thus, any function that accepts __memx object can transparently work with RAM and flash objects.

For platforms with a Harvard architecture and a very small RAM like AVR this allows to move all constant strings used in trace messages to flash in the instruction address space, releasing resources for other things.

This change introduces IOBJ and IPTR type qualifiers.  The 'I' indicates that the object may like in instruction space on a Harvard architecture machine.

For platforms that do not have __flash and __memx or similar symbols IOBJ and IPTR are empty, making the types equivalent to, for example, 'const char' and 'const char*'.  For Atmel compiler these will become 'const __flash char' and 'const __memx char*'.  All printf() functions and syslog() functions are changed so that the qualifier is used with the format parameter.

From: Dimitry Kloper <dikloper@cisco.com>
2016-01-05 10:29:29 -06:00
Chris Croswhite
b73a7515b6 Small compilation issue when selecting localtime, this patch adds the correct ifdef. 2015-12-30 19:12:42 -06:00
Gregory Nutt
c1fff4706c signals: Adds a very limited, minimal implementation for SIGEV_THREAD 2015-12-30 15:01:14 -06:00
Gregory Nutt
9835eeb181 signals: Basic framework to support SIGEV_THREAD 2015-12-30 13:20:31 -06:00
Gregory Nutt
b682190f52 Rename all head files in main NuttX repository with names like *internal.h, removing the internal 2015-12-29 17:31:17 -06:00
Gregory Nutt
e8d0f85c8b Modules: Add mod_setsymtab to set global symtol table once. Now we can remove symbol table parameters from the insmod call. This will make implementing an NSH insmod command much easier 2015-12-13 08:10:01 -06:00
Gregory Nutt
e5f27f5865 Fix some conditional compilation. CONFIG_LIBC_LOCALTIME should be checked in most of the same places wehre CONFIG_TIME_EXTENDED is checked 2015-11-25 12:51:45 -06:00
Gregory Nutt
064ef4f1fb At day-of-week support to strftime() 2015-11-25 11:51:46 -06:00
Gregory Nutt
006528b144 Add support for freopen() 2015-11-22 08:39:17 -06:00
Paul A. Patience
bfc95c641f stdlib: Fix forgotten FARs 2015-11-18 14:22:43 -05:00
Gregory Nutt
e9bd8bceb4 nuttx/libc: Fix some spacing and alignment issues 2015-10-12 07:45:02 -06:00
Gregory Nutt
bb05de4b6e Remove TABs 2015-10-04 16:01:21 -06:00
Gregory Nutt
af086c40ff Remove dangling whitespace 2015-10-04 15:28:54 -06:00
Gregory Nutt
0b12dbf95d Fix some spacing problems 2015-10-04 15:04:00 -06:00
Gregory Nutt
16b32bbadd Standardize the width of all comment boxes in C files 2015-10-03 07:25:53 -06:00
Gregory Nutt
5b51a9fcdd Standardize the width of all comment boxes in C files 2015-10-02 17:43:18 -06:00
Gregory Nutt
cb9e27c3b0 Standardize naming used for public data and function groupings 2015-10-02 16:30:35 -06:00
Gregory Nutt
38e6142ae8 Make coding style more conformant, take description from OpenGroup.org, rename formal parameters to match names used on OpenGroup.org 2015-10-02 12:58:40 -06:00
Gregory Nutt
2ba224eca2 Add support for bsearch() in C library 2015-10-02 12:33:58 -06:00
Gregory Nutt
a813baef0a User workqueue, cosmetic changes 2015-09-30 14:03:55 -06:00
Gregory Nutt
4cd57e1e4e Work queues: Logic that sets the queued indication and the logic that does the actual queuing must be atomic 2015-09-30 11:04:29 -06:00
Stefan Kolb
983128e16a sscanf: Formats a, A, e, E, g, and G should be treated the same as f and F 2015-09-17 07:41:33 -06:00
Paul A. Patience
9f108b7b63 Fix issues detected by clang 2015-09-10 20:59:43 -04:00
Gregory Nutt
d0e4df9931 Update ChangeLog 2015-09-10 07:24:58 -06:00
Gregory Nutt
5058ed3ef4 Only build shutdown if CONFIG_NET=y. The warning is pretty annoying 2015-09-09 12:14:04 -06:00
Gregory Nutt
8a87e3ca6e Add an empty function that can serve as a placeholder for the network shutdown() function 2015-09-09 07:03:05 -06:00
Gregory Nutt
bc46130c70 Rename libc/stdio/lib_avsprintf.c to lib_vasprintf.c 2015-09-07 13:28:00 -06:00
Sebastien Lorquet
77e4e7b231 Change all references from avsprintf to vasprintf. From Sebastien Lorquet 2015-09-07 13:22:13 -06:00
Gregory Nutt
9c66bde5b0 Fix typo in pre-processor command noted by Pierre-noel Bouteville. Also move # of pre-processior command to column 1 2015-09-05 09:10:48 -06:00
OrbitalFox
381c587770 Fix typo but should be buf. From OrbitalFox 2015-09-03 07:35:32 -06:00
Gregory Nutt
168e9d3ddb Merged in paulpatience/nuttx (pull request #23)
Correct #if to #ifdef when the macro can be undefined.  Fix bug in AT24XX driver:  it should compare AT24XX_ADDRSIZE to 2.
2015-09-01 12:28:35 -06:00
Paul A. Patience
3b89eabd50 Correct #if to #ifdef when the macro can be undefined. Fix bug in AT24XX driver: it should compare AT24XX_ADDRSIZE to 2. 2015-09-01 13:52:29 -04:00
Stefan Kolb
5ac6de118e libc/math/lib_asin.c: The function did not convert for some input values. Asin did not convert for values which do not belong to the domain of the function. But aside of that the function also did not convert for sine allowed values. I achieved a conversion of the function by reducing the DBL_EPSION and by checking if the input value is in the domain of the function. This is a fix for the problem but the function should always terminate after a given number of iterations. From Stefan Kolb. 2015-09-01 08:45:14 -06:00
Gregory Nutt
6158086dd4 Update some comments 2015-08-24 15:41:45 -06:00
Gregory Nutt
933d74e5c1 Networking: With these changes, I can ping the local loopback device from the simulator 2015-08-24 13:49:12 -06:00
Gregory Nutt
0b012c7978 Fix some initial loop back device compilation errors; mark configuration as EXPERIMENTAL 2015-08-24 11:29:54 -06:00
Gregory Nutt
07bdff9ef7 Networking: Add NetDB support for the local loopback device 2015-08-24 10:08:26 -06:00
Gregory Nutt
6fc449f689 Moving canned_symtab from nuttx/libc to apps/system 2015-08-23 11:33:29 -06:00
Alan Carvalho de Assis
9b036311c0 Missing comma in spi.h header file 2015-08-23 11:06:32 -06:00
Gregory Nutt
4723ff5563 Update README 2015-08-23 10:46:11 -06:00
Gregory Nutt
f12692b78f Extend canned symbol table logic to work in protected build mode 2015-08-23 10:44:04 -06:00
Pavel Pisa
9ab3f03153 Define some symbol export conditions, correct errno and add sleep and usleep. From Pavel Pisa 2015-08-23 09:05:40 -06:00
Pavel Pisa
81a257eeb0 Optional canned symtab inclusion to the build. When option CONFIG_LIBC_SYMTAB is selected and symbol table file libc/symtab/canned_symtab.inc is prepared then application can use system provided complete symbol table. The option has substantial effect on system image size. Mainly code/text. If loading of applications at runtime is not planned do not select this. From Pavel Pisa. 2015-08-23 08:38:58 -06:00
Pavel Pisa
23035ca68d [PATCH] gethostbyname(): correct returned address format when DNS is used. The hostent.h_addr_list should point to raw in_addr or in6_addr as defined in the standard. Original implementation used that
for numeric addresses but for DNS lookup returned pointer to whole sockaddr_in or sockaddr_in6.

getaddrinfo() should be preferred in a long term perspective. Return of complete addresses from the lookup would be better in such case but it requires significant changes anyway - multiple addresses support and most probably dynamic memory allocation which is bad for many RT applications. So gethostbyname() is sufficient for most applications now.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2015-08-21 18:33:03 -06:00
Gregory Nutt
51f386d08a Fix more common typos 2015-08-16 11:07:23 -06:00
Gregory Nutt
eb19e0c0e2 Add two files that I forgot in a previous commit 2015-08-14 10:12:04 -06:00
Gregory Nutt
6df94096ca Add ldiv() and lldiv() too 2015-08-14 08:45:59 -06:00
Stavros Polymenis
301f215638 Add support for div() to the C library. From OrbitalFox 2015-08-14 08:35:01 -06:00
Gregory Nutt
5772813d29 Change the name of the local variable sigset to set to prevent name collisions with the function of the same name 2015-07-31 13:32:10 -06:00
Librae
dce921c1cd Check if DNS server has been initialized before trying to lookup the server address in the cache. From Librae 2015-07-27 14:16:45 -06:00
Gregory Nutt
c6c424583d Fix a test for valid scheduling policies 2015-07-24 10:20:22 -06:00
Gregory Nutt
5baa738019 Most cosmetic, but includes some fixes to some range checking 2015-07-23 14:36:49 -06:00
Gregory Nutt
9095e8eab4 include/, sched/, and libc/: Add support for sporadic scheduling parameters in struct sched_param, posix_spawnattr_t, and pthread_attr_t. Update all user interfaces to pass sporadic scheduling parameters. Feature is dependent on EXPERIMENTAL and no changes have yet been made to core scheduling logic. 2015-07-23 13:16:32 -06:00
Gregory Nutt
ab37a759d8 Eliminate a warning detected by nuttx/tools/testbuild.sh 2015-07-22 14:11:25 -06:00
Gregory Nutt
ccd3ec0f52 STM32 F7 Ethernet: Add logic to align all DMA memory to the D-Cache line size 2015-07-19 16:35:25 -06:00
Gregory Nutt
8b9cafe70a Another FIX for gethostbyname if CONFIG_NETDB_DNSCLIENT is not defined 2015-07-19 14:45:34 -06:00
Gregory Nutt
a314561474 STM32F746G-DISCO: Getting closer to a build 2015-07-17 11:47:16 -06:00
Sebastien Lorquet
b5016f3a7f gethostbyname() and gethostbyname_r() should be built even if there is no host file support. From Sebastien Lorquet 2015-07-17 09:43:28 -06:00
Sebastien Lorquet
4eec7041fc Move definition of h_errno from lib_parsehostfile.c to lib_netdb. h_errno should still be defined even if there is no host file support. From Sebastien Lorquet. 2015-07-17 09:39:45 -06:00
Gregory Nutt
2a2e9fa56a gethostbyname_r: Fix test of return value from inet_pton(). Zero does not mean success 2015-07-17 08:24:21 -06:00
Gregory Nutt
95424d9ef3 NETDB: Add support for caching DNS name resultion mappings 2015-07-13 10:41:32 -06:00
Gregory Nutt
fcaac468b1 NETDB: Make sure that we have a valid DNS server address before attempting DNS queuries; Provide an optional default DNS server address in the configuration 2015-07-13 08:19:31 -06:00
Gregory Nutt
9a6cf5724e DNS: Finish off low-level DNS IPv6 request processing. Untested on initial commit 2015-07-12 16:23:08 -06:00
Gregory Nutt
835878b003 This completes all interface level support for IPv6 DNS. Still some missing logic at the lowest protocol levels 2015-07-12 13:45:52 -06:00
Gregory Nutt
3407ef5f33 netdb: Modifications to DNS client logic and to dns_get/setserver() interfaces to support DNS clients at IPv6 addresses (still no support for resolution to IPv6 addresses). 2015-07-12 11:56:53 -06:00
Gregory Nutt
95ae3ef23f Oops. Forgot to add a file in a previous commit 2015-07-12 09:28:03 -06:00
Gregory Nutt
5ace3311d9 Repartitioning of DNS client logic in preparation for IPv6 support
- Rename include/nuttx/net/dnsclient.h to dns.h
- Move internal DNS prototypes from dns.h to libc/netdb/lib_dns.h
- Global standard DNS definitions from libc/netdb/dns_soccket.c to dns.h
- Eliminate dns_gethostip().  This is now an internal part of gethostbyname()
- Eliminate interface dns_whois().  Not needed in this new context.
2015-07-12 09:19:40 -06:00
Gregory Nutt
e243b082ee DNS: Remove some unused, non-functional DNS functions; remove the annoying _sock at the end of some DNS functions names, it is no longer needed to distinguish the functions 2015-07-11 07:17:00 -06:00
Gregory Nutt
ed004be6d0 Clean up some syscall logic that has changed due to revised netdb configuration 2015-07-10 15:41:20 -06:00
Gregory Nutt
89e91333af Fix a warning 2015-07-10 14:53:30 -06:00
Gregory Nutt
23d8ab0fb1 Fix some mangled conditional compilation 2015-07-10 14:10:53 -06:00
Gregory Nutt
dc478617e5 Remove bogus references to CONFIG_HAVE_GETHOSTBYNAME 2015-07-10 14:03:03 -06:00
Gregory Nutt
7dec298ef3 gethostbyname() will not attempt a DNS lookup if so enabled 2015-07-10 13:30:09 -06:00
Gregory Nutt
4102470bdd Move the DNS server from apps/netutils/dnsclient to nuttx/libc/netdb. Move netdb functions from libc/net to libc/netdb. Fix up naming to reflect the repartitioning 2015-07-10 12:11:40 -06:00
Gregory Nutt
2be9bfa40a gethostbyname() should succeed for matches on host name aliases as well 2015-07-09 09:14:42 -06:00
Gregory Nutt
434eeefe52 inet_pton and ntop need to support IPv4 and IPv6 addressing unconditionally for the netdb logic 2015-07-08 16:45:42 -06:00
Gregory Nutt
d58d668f86 Fix an addressing problem in host file read logic 2015-07-08 16:25:16 -06:00
Gregory Nutt
1cd4ef1730 Fix an assertion 2015-07-08 16:00:50 -06:00
Gregory Nutt
299782e8ec Add support for gethostbyaddr() 2015-07-08 14:33:23 -06:00
Gregory Nutt
72701d753b Remove some whitespace at the end of lines 2015-07-08 13:42:36 -06:00
Gregory Nutt
1b1e34e1d5 libc: Add gethostbyname(). Untested on initial commit 2015-07-08 13:40:52 -06:00
Gregory Nutt
f94fe747ae Undo part of a previous change. Move get/sethostname back from net/netdb to libc/unistd 2015-07-08 11:11:52 -06:00
Gregory Nutt
d8d4ab8c10 The libc versions of get/sethostname should just call the internal net/netdb versions in the flat build. In the protected and kernel builds, sethostname is a system call but gethostname calls uname() to get the hostname 2015-07-05 10:45:00 -06:00
Gregory Nutt
6380832ab7 Move the header of set/sethostname from libc/unisted to net/netdb. This is OS internal stuff 2015-07-05 10:43:37 -06:00
Gregory Nutt
5f2a181599 Add conditional definition for MIN macro needed in last commit 2015-07-05 09:08:45 -06:00
Gregory Nutt
fc5281e2a1 get/sethostname: Add a critical section. There is a microscopic possibily that the global name could change while being accessed by a thread 2015-07-05 08:50:51 -06:00
Gregory Nutt
e1c306f2dd Add support for sethostname 2015-07-05 08:42:32 -06:00
Gregory Nutt
6576672e09 uname: version string must hold 40 character value; strings returned by uname must always be NUL terminated 2015-07-05 06:46:00 -06:00
Gregory Nutt
10ec4737c2 Use strncpy instead of strcpy in uname() 2015-07-04 15:20:36 -06:00
Gregory Nutt
bd69415963 Fix a typo 2015-07-03 07:52:57 -06:00
Stavros Polymenis
701509f9bd Add implementations of uname() and gethost(). From Stavros Polymenis. 2015-07-03 07:50:27 -06:00
Gregory Nutt
342f5fe33d Fix references to the no-longer-existent misc/ directory in comments, README files, and documentation 2015-06-28 08:08:57 -06:00
George McWilliams
c8b221e03f Uninitialized variable can cause hardfault from getopt if required argument is missing. 2015-06-18 13:55:19 -06:00
Gregory Nutt
bf9e1943a4 Clean up and review of header files for conformance to standards 2015-06-12 18:07:47 -06:00
Gregory Nutt
718d4d23ad Add asctime(), asctime_r(), ctime(), and ctime_r(). 2015-06-12 11:52:49 -06:00
Gregory Nutt
d8db596b3b POSIX message queues: Move mq_setattr() and mq_getattr() from nuttx/libc/mqueue to nuttx/sched/mqueue. Also add sysyscall support for mq_setattr() and mq_getattr(). This is necessary in protected and kernel builds because in those cases the message queue structure is protect and cannot be accessed directly from user mode code. Noted by Jouko Holopainen. 2015-06-03 09:24:17 -06:00
Gregory Nutt
fce87336a4 Add an option to disable support for long long formats in lib_vsprintf. From Alan Carvalho de Assis 2015-05-30 10:00:54 -06:00
Gregory Nutt
87f4f0ccdd Minor fixes to apps/netutils/Kconfig and nuttx/libc/net/lib_inetntoa.c from Max Neklyudov 2015-05-19 12:07:07 -06:00
Gregory Nutt
823889b214 Update comments and README 2015-04-15 16:25:38 -06:00
Gregory Nutt
13bd65fe82 configs/sim/src: Add logic to test localtime and TZ database. See apps/system/README.txt for info 2015-04-15 11:00:40 -06:00
Gregory Nutt
f087e35676 A little localtime clean-up 2015-04-14 10:46:05 -06:00
Gregory Nutt
c23610994c libc/time/lib_localtime.c: Move tzset(); it belongs in the Public Functions grouping 2015-04-14 08:12:45 -06:00
Gregory Nutt
7a745c3fa4 Use common macro(s) for calculating link layer header length. From Brennan Ashton. 2015-04-13 13:53:13 -06:00
Gregory Nutt
3d6161a7aa Update some comments 2015-04-13 07:39:56 -06:00
Gregory Nutt
814aa94b0d Update comments in a Kconfig file 2015-04-12 09:21:31 -06:00
Gregory Nutt
228b0e1d55 ix an error in time initialization when there is not RTC and the time is initialized from a fixed configured value. The call to clock_calendar2utc() was returning the time in units of seconds. The initialization logic, however, was expecting to get time in units of days. 2015-04-12 09:01:35 -06:00
Gregory Nutt
237e1ed407 Local time support is now EXPERIMENTAL 2015-04-12 07:57:16 -06:00
Gregory Nutt
8a023fec09 localtime: Default zoneinfo directory is /etc/zoneinfo instead of /usr/local/etc/zoneinfo which results in a longer pathname than the default 32 characer MAX 2015-04-11 13:11:10 -06:00
Gregory Nutt
858e33d974 Localtime: Configuration name inconsiste: CONFIG_LIBC_TZ_DIR vs CONFIG_LIBC_TZDIR 2015-04-11 12:48:18 -06:00
Gregory Nutt
5a110d08d9 Allow NSH date command with no RTC. This command is useful without an RTC too. Also, this permits testing on the simulator which never has an RTC 2015-04-11 12:13:18 -06:00
Gregory Nutt
3840c2a14b Fix several typos in comments 2015-04-09 16:13:03 -06:00
Gregory Nutt
9ab439de6c apps/examples/ostest: Add a test for the sigprocmask, sighold, and sigrelse 2015-04-09 15:53:59 -06:00
Gregory Nutt
1025c3fb21 Fixes to asinh(), atanh(), and sinh(): The 'basic' expansions all exhibited bad cancellation errors near zero (<= 1E-10). This can be easily seen e.g. with x = 1E-30, the results are all zero though they should be extremely close to x. The cutoff values (1E-5, 1E-9) are chosen so that the next term in the Taylor series is negligible (for double). Functions could maybe be optimized to use only first term (x) and a smaller cutoff, just bigger than where the cancellation occurs. 2015-04-09 10:35:07 -06:00
Gregory Nutt
81703e6fad Add sigset() 2015-04-09 10:16:35 -06:00
Gregory Nutt
70fb7a30b5 Remove executable flag from some C files 2015-04-09 08:15:02 -06:00
Gregory Nutt
4c60fe666c Add sighold(), sigrelse(), sigignore(), and sigpause(). 2015-04-09 08:07:09 -06:00
Gregory Nutt
f6b05529da sigaddset() and sigdelset() need to set errno if a bad signal number is received 2015-04-09 08:05:47 -06:00
Gregory Nutt
1018296e27 Make some file section headers more consistent with standard 2015-04-08 07:32:08 -06:00
Gregory Nutt
045bbf3af9 Fix some coding style inconsistencies 2015-04-08 07:02:13 -06:00
Gregory Nutt
190c9adef0 Implements CONFIG_TIME_EXTENDED as we discussed relative to providing the last 3 members of the tm struct and support for filling them in and even using the wday in the STM32 RTC. From David Sidrane. 2015-04-08 06:56:43 -06:00
Gregory Nutt
c39725b398 libc: stdio: Fix NULL pointer dereference in ungetc(). If 'stream' was NULL, 'stream->fs_oflags' was evaluated. From Juha Niskanen 2015-03-12 07:51:23 -06:00
Gregory Nutt
3a67c182b4 sfrtime: Missing implementation of %C (was being treated as %y). From Freddie Chopin 2015-02-23 11:05:07 -06:00
Gregory Nutt
f357897b6c Some files that now include sys/time.h should no longer include timer.h 2015-02-15 16:38:18 -06:00
Gregory Nutt
fd8d374bfe Move struct timveval from include/time.h to include/sys/time.h where it belongs. 2015-02-15 13:00:44 -06:00
Gregory Nutt
63ac1ec423 Cosmetic updates to comments 2015-02-12 13:44:22 -06:00
Gregory Nutt
b6e399cc65 Update ChangeLog 2015-02-12 11:17:23 -06:00
Gregory Nutt
147042218b gettimeofday() and settimeofday(): Move gittimeofdady() from sched/clock to libc/time. All remove gettimeofday() from NuttX system calls. It is only a wrapper around clock_settime() and does not need a trap. gettimeofday() is no longer tried as a core OS interface.
gettimeofday has been decremented in POSIX 2008.  settimeofday() was never part of POSIX, but I decided to add it to libc as well just for symmetry.
2015-02-12 11:10:46 -06:00
Gregory Nutt
62aee62c3a Some extensions to netinet/in.h adding some Linux compatible defintions. From Macs N. 2015-02-11 06:35:34 -06:00
Gregory Nutt
7c22824981 Oop.. forgot a semicolon in a preceding commit 2015-02-09 11:16:01 -06:00
Gregory Nutt
26e1327462 execl(): Fix bad logic in counting the number of arguments. This could never have worked. Noted by Pierre-noel Bouteville 2015-02-09 08:53:00 -06:00
Gregory Nutt
6bc9a0c9c6 Fix backward calculation in the work queue timing. From Liio Chen via the PX4 repository 2015-01-27 06:17:02 -06:00
Gregory Nutt
b12cf6d2f5 Add math library support for trunc functions. From Brennan Ashton. 2015-01-26 19:00:35 -06:00
Gregory Nutt
0a11f9b669 Cosmetic 2015-01-26 18:55:17 -06:00
Gregory Nutt
06337a4f7a Add math library support for copysign. From Brennan Ashton 2015-01-26 18:52:28 -06:00
Gregory Nutt
7e177e1c12 Add error function to math library. From Brennan Ashton. 2015-01-26 13:58:47 -06:00
Gregory Nutt
e153959eea Add support for inverse hyperbolic functions. From Brennan Ashton 2015-01-26 13:52:53 -06:00
Gregory Nutt
5a441ce03b Networking: Misck IPv6 detanglement 2015-01-15 12:19:44 -06:00
Gregory Nutt
40b0acaded sscanf should also support %F 2014-12-12 07:54:37 -06:00
Gregory Nutt
1b661c6d23 sscanf: Accept %X as well as %x as a format specifier. From Sébastien Lorquet 2014-12-12 07:46:46 -06:00
Gregory Nutt
1c569b85f8 Cosmetic change to force compliance with coding standard 2014-12-12 07:14:16 -06:00
Gregory Nutt
554f56b99d strncpy: Commit d0c76ccacf0dc8988f9617ad82bf4349f456bb08 will trash a lot of memory if n == 0. From Hiro 2014-12-11 06:21:23 -06:00
Gregory Nutt
69cb752813 Add CRC8 support. From Ken Pettit 2014-12-09 13:27:22 -06:00
Gregory Nutt
297a255fd8 avsprintf(): Fix a bug in usage of va_list on x86. On x86, va_list is a pointer to a single copy on the stack. avsprintf() calls lib_vsprintf() twice and so traverses the va_list twice using va_start. va_start modifies that single copy on the stack so that the second call to lib_vsprintf() fails. This appears to be an issue with x86 only so far 2014-12-08 10:40:06 -06:00
Gregory Nutt
91e22aeedd Traveler: Change the way that the world path is managed. 2014-12-08 09:28:53 -06:00
Gregory Nutt
7ad7163bd3 Updated comments 2014-11-29 17:39:40 -06:00
Gregory Nutt
4657f5c870 Update some Documentation and comments associated with the last ioctl change 2014-11-29 13:25:29 -06:00
Gregory Nutt
1a22ede31c Add some comments 2014-11-29 10:59:41 -06:00
Gregory Nutt
e31d5125ae Add support for a variadic ioctl() function. The ioctl() interface is a non-standard, Unix interface. NuttX has always used the older, three-parameter version. Most contemporary systems now, however, use a variadic form of the ioctl() function. Added an option to insert a shim layer to adapt the three-parameter ioctl() to use the variadic interface form. Internally, the ioctl handling is the same three-parameter logic. The only real complexity to the shim is in how the system calls must be handled. 2014-11-29 10:53:22 -06:00
Gregory Nutt
d1cdf9b497 Another fix misthink in big cppcheck changed 2014-11-25 17:22:52 -06:00
Gregory Nutt
1aa528a572 More fixes to problems noted by cppcheck. Some are kind of risky; some are real bugs. 2014-11-25 14:10:35 -06:00
Gregory Nutt
9ac09db800 More fixes to problems noted by cppcheck. Some are kind of risky; some are real bugs. 2014-11-25 13:46:14 -06:00
Gregory Nutt
838f2053e4 Fix some compile errors introduce in last commits 2014-11-13 07:44:45 -06:00
Gregory Nutt
2a0549865f execl(): Don't allocate or free and argv[] list if there are not arguments 2014-11-13 06:35:20 -06:00
Gregory Nutt
597999400e execl() no longer depends on CONFIG_MAX_TASK_ARGS 2014-11-12 18:44:11 -06:00
Gregory Nutt
639641dc04 The definition of strncpy() is that empty space should be zero-filled, the patch adds the zero filling (I didn’t know this, see e.g. the POSIX spec here: http://pubs.opengroup.org/onlinepubs/7908799/xsh/strncpy.html). From Lorenz Meier. 2014-11-12 07:36:15 -06:00
Gregory Nutt
c23b7ec93d From Lorenz Meier: The implementation of access() as vararg macro has the issue that any function call with the same name (even in a C++ class) will match with it and result in a compile error. I have replaced it with a small function, and tried to have decent documentation as well. This resolves the compile issue, and shouldn’t have negative side effects for users of the function. 2014-11-11 11:52:24 -06:00
Gregory Nutt
fe7bdb284e EFM32: Fix issues associated with SPI bi order. From Pierre 2014-11-09 08:21:38 -06:00
Gregory Nutt
ee22104762 Can't use formal parameter name 'template' in stdlib.h. Causes C++ compilation errors. Noted by Lorenz Meier 2014-11-06 07:00:23 -06:00
Gregory Nutt
48888ad65b Add tmpnam() and tempnam() 2014-11-05 10:44:16 -06:00
Gregory Nutt
787cd466d2 Add tmpnam() and tempnam() 2014-11-05 10:43:17 -06:00
Gregory Nutt
d13731711f Add mktemp() and mkstemp() 2014-11-05 09:39:18 -06:00
Gregory Nutt
e6c2a36bbe Add optional timestamp to syslog output. From pn_bouteville@yahoo.fr 2014-11-01 09:17:34 -06:00
Gregory Nutt
87ee3f2fc7 SAM3/4: Fix error serial TERMIOS ioctl handling 2014-10-30 12:23:15 -06:00
Gregory Nutt
6bbfb2b7ca Add isatty() function. From Alan Carvalho de Assis 2014-10-27 12:29:15 -06:00
Gregory Nutt
179fabb019 Add description of work queues to the porting guide. Update comments 2014-10-14 10:21:18 -06:00
Gregory Nutt
740c5c4b7a Fix error in protected build, user-mode work queue 2014-10-12 09:40:26 -06:00
Gregory Nutt
0c1c37bae2 Fix some compiler errors in user-work queue configuration that crept in the last bunch of commits 2014-10-11 16:27:24 -06:00
Gregory Nutt
b78fe7c270 Rename CONFIG_SCHED_USRWORK to CONFIG_LIB_USRWORK 2014-10-11 15:59:40 -06:00
Gregory Nutt
9292e3d9de Decouple the user-space work queue from the kernel space work queues 2014-10-11 15:50:22 -06:00
Gregory Nutt
bb1d91bd83 Make building of low-priority work queue independent of also building the high-priority work queue 2014-10-11 14:43:24 -06:00
Gregory Nutt
743abd7155 Add Kconfig support to select the number of low-priority worker thread 2014-10-10 16:38:19 -06:00
Gregory Nutt
4a4b3ac537 Add support for multiple low-priority worker threads 2014-10-10 16:24:50 -06:00
Gregory Nutt
cf59a195ba User-mode work queue logic should not disable interrupts 2014-10-10 14:52:04 -06:00
Gregory Nutt
16a3e83258 Add support for delays of different durations in work queue processing 2014-10-10 13:21:37 -06:00
Gregory Nutt
75e7a4dbfc Minor changes to work queue timing logic 2014-10-10 12:27:11 -06:00
Gregory Nutt
b2cebaa9d4 Modularize starting of worker threads to better isolate individual initialization characteristics 2014-10-10 09:38:28 -06:00
Gregory Nutt
1afc9773ac Decoupling work queue data structures. This is part of the preparation to support multiple low-priority worker threads 2014-10-10 08:35:58 -06:00
Gregory Nutt
6220256a09 Repartition work queue code. Move kernel-specific parts from libc/wqueue to sched/wqueue 2014-10-10 06:22:51 -06:00
Gregory Nutt
c2933b92e3 libc/aio/aio.h is empty, but add some protection anyway in case it is ever used in the future 2014-10-09 10:52:53 -06:00
Gregory Nutt
02444cfb2c Update comments and function headers 2014-10-09 07:38:38 -06:00
Gregory Nutt
5815201cc2 Move syslog back to libc/syslog from fs/syslog 2014-10-09 07:08:36 -06:00
Gregory Nutt
d2c8e13ed5 Backing out some logic: Remove syslog functions from syscalls 2014-10-09 06:58:23 -06:00
Gregory Nutt
bbc658930a Passing va_list in syscall does not work. Temporarily moved syslog and lowsyslog into kernel code and access via a system call. Need to revisit. Will probably need to move all of syslog back from fs/syslog to libc/syslog 2014-10-08 20:12:52 -06:00
Gregory Nutt
323084f32f Add syslog system calls 2014-10-08 19:37:10 -06:00
Gregory Nutt
ec57ab6391 Implement setlogmask(); move some syslog logic from libc/syslog to fs/syslog 2014-10-08 19:08:26 -06:00
Gregory Nutt
a8399d5c6b Move syslog logic from libc/misc and libc/stdio to libc/syslog 2014-10-08 17:16:41 -06:00
Gregory Nutt
176491ce75 Misc changes to get a clean build after all of the syslog changes. There are probably other things still broken 2014-10-08 16:23:48 -06:00
Gregory Nutt
f8ed7323c0 make standard syslog and vsyslog POSIX compliant (also modify non-standard syslog functions for compatibility). This will break a lot of things until ALL usage of syslog is updated to use the modified interfaces 2014-10-08 09:44:15 -06:00
Gregory Nutt
7f36c4e97b Update some Kconfig comments; Add a upper limit on the lower priority worker thread for priority inheritance 2014-10-07 17:11:26 -06:00
Gregory Nutt
d7843c8e24 Add support for priority inheritance on the low priority worker queue 2014-10-07 07:41:52 -06:00
Gregory Nutt
03b0dc12c7 Add AIO interfaces to libc.csv 2014-10-06 19:15:10 -06:00
Gregory Nutt
7cbe29e7db Fix compile problems with debug on 2014-10-06 12:28:37 -06:00
Gregory Nutt
39c26d4cd4 Fix a typo 2014-10-06 08:11:03 -06:00
Gregory Nutt
652d3ed29d Rename CONFIG_LIBC_AIO to CONFIG_FS_AIO since it is now an OS property 2014-10-05 15:44:43 -06:00
Gregory Nutt
f73a18ae39 Move all file operations from libc/aio to fs/aio. These will need to be kernel routines in order to handler issues with using file descriptors on worker thread 2014-10-05 15:33:31 -06:00
Gregory Nutt
f34127823a First round of changes fo AIO integration 2014-10-05 13:57:55 -06:00
Gregory Nutt
33b1f59ee8 Most paranoid changes to assure the state of things 2014-10-05 12:34:22 -06:00
Gregory Nutt
9a1b011178 Initiail implementation of lio_listio() and rethinking of signal logic 2014-10-05 11:43:42 -06:00
Gregory Nutt
eeaae40d0c Initial implementation of aio_fsync() 2014-10-05 08:53:13 -06:00
Gregory Nutt
a4861c7cb7 Iniial implementatin of aio_cancel() 2014-10-05 08:22:39 -06:00
Gregory Nutt
8d03c3f906 Initial implementation of aio_suspend() 2014-10-05 07:11:11 -06:00
Gregory Nutt
c7c62d5b2c Move AIO signal logic to a common location in aio_signal.c. Also fix several typos 2014-10-05 06:55:17 -06:00
Gregory Nutt
c274acc48f Move AIO signal logic to a common location in aio_signal.c. Also fix several typos 2014-10-05 06:53:56 -06:00
Gregory Nutt
0c241ace72 Add initial implementatin of aio_return() and aio_error() 2014-10-04 18:17:54 -06:00
Gregory Nutt
3bef2b7a43 Update TODO list and comments in aio files 2014-10-04 17:47:54 -06:00
Gregory Nutt
e8cef249cc Initial implementation of aio_write() 2014-10-04 17:30:24 -06:00
Gregory Nutt
fa28c51c75 Fleshes out aio_read implementation 2014-10-04 14:44:57 -06:00
Gregory Nutt
9e8a4dd229 Add skeleton file for eventual implementation of aio_read() 2014-10-04 14:22:00 -06:00
Gregory Nutt
1f897daa27 Add empty skeleton file where lio_listio() will eventually be implemented 2014-10-04 11:23:17 -06:00
Gregory Nutt
11c2619838 Add a build structue to support asynchronous I/O 2014-10-04 10:31:11 -06:00
Gregory Nutt
92cc7a96e6 Change to lib_dtoa() to fix prescision error from trailing zeroes 2014-09-26 05:49:50 -06:00
Gregory Nutt
5e285b8bc4 More NxWM build fixes 2014-09-20 16:47:00 -06:00
Gregory Nutt
925fc9ad81 First round of changes to get the ELF configuration building again 2014-09-16 15:37:05 -06:00
Gregory Nutt
abb60c9c2f Fix some backward conditional compilation 2014-09-15 16:23:31 -06:00
Gregory Nutt
398f7b594f execv() is a basic system interface. It should not be in libc/ but rather in sched/task. Its symboltable helper logic also belongs in the kernel but belings in binfmt/ with the other symbol table logic 2014-09-15 10:15:47 -06:00
Gregory Nutt
da7a440b35 execv() is a basic system interface. It should not be in libc/ but rather in sched/task. Its symboltable helper logic also belongs in the kernel but belings in binfmt/ with the other symbol table logic 2014-09-15 10:15:19 -06:00
Gregory Nutt
b255883b0a Rename everything associated with the dynamic process stack to ustack to make room in the name space for a kstack 2014-09-14 09:10:09 -06:00
Gregory Nutt
e12213592b Don't build task_create() or task_spawn() interfaces if there is an addres environment 2014-09-14 08:22:21 -06:00
Gregory Nutt
1f3db86106 Fix one more dependency upon having a symbol table 2014-09-12 13:03:10 -06:00
Gregory Nutt
8f30804e05 Having a symbol table is an option. There are no symbol tables with CONFIG_BUILD_KERNEL, for example. 2014-09-12 12:48:22 -06:00
Gregory Nutt
6295203a82 Cosmetic changes 2014-09-12 12:44:03 -06:00
Gregory Nutt
ba7d5acf94 Fix a couple more places where the wrong allocator is being used 2014-09-11 15:56:04 -06:00
Gregory Nutt
fc35e35165 When a privileged thread exits, we have to use the kernel alloctor to free memory; when an unprivileged thread exits, we don't have to do anything... heap memory will be cleaned up when the address environment is torn down 2014-09-11 09:00:10 -06:00
Gregory Nutt
44499ed46c Rename some functions and reshuffling some paramters 2014-09-11 08:37:06 -06:00
Gregory Nutt
28ad8e7cfd Change commenting style to agree with coding standard 2014-09-08 08:02:37 -06:00
Gregory Nutt
9d03879c8b Correct atan2 implementations from Denis Arnst 2014-09-08 07:55:09 -06:00
Gregory Nutt
e953fb11cd A const storage class to to phthread parameters. From Freddie Chopin 2014-09-08 06:21:48 -06:00
Gregory Nutt
1822b86373 Fix some conditional compilation in kernel build mode. And, while we are touching this logic, make g_default_pthread_attr const. 2014-09-07 10:46:58 -06:00
Gregory Nutt
47d55c28dc Mostly cosmetic changes 2014-09-04 10:28:38 -06:00
Gregory Nutt
23147c40a5 Remove final traces of the 8015 from the NuttX source tree 2014-09-01 13:21:15 -06:00
Gregory Nutt
54fa3b0b59 Rename kfree to kmm_free for consistency with other naming conventions 2014-08-31 17:04:02 -06:00
Gregory Nutt
9aca0c1c84 Rename kumalloc to kumm_malloc and kuzalloc to kumm_zalloc for consistency with other naming 2014-08-31 16:24:24 -06:00
Gregory Nutt
9ad7dae4c1 Rename kufree to kumm_free for consistency with other naming 2014-08-31 16:15:11 -06:00
Gregory Nutt
9cd1ddada4 Rename kmemalign to kmm_memalign and krealloc to kmm_realooc for consistency with other naming 2014-08-31 15:27:37 -06:00
Gregory Nutt
e3ff0689bb Rename CONFIG_NUTTX_KERNEL to CONFIG_BUILD_PROTECTED; Partially integrate new CONFIG_BUILD_KERNEL 2014-08-29 14:47:22 -06:00
Gregory Nutt
a325cb9f0d sscanf(): NuttX libc tried to guess how many characters to parse, extracted them into a buffer, then ran strtol() on that buffer. That guess is often wrong. A better approach would be to call strtol() directly on the input data, using the endptr return value to determine how many characters to skip after parsing. From Kosma Moczek 2014-08-18 07:33:17 -06:00
Gregory Nutt
8428a58bdc Add support for an ioctl that can be used to notify an application when there is a change in the network status signalled by a PHY interrupt 2014-08-16 12:56:02 -06:00
Gregory Nutt
f60ff46646 Remove libc/time/tzfile.h; content moved inside of libc/time/lib_localtime.c 2014-08-15 15:59:57 -06:00
Gregory Nutt
96bc77fb93 libc/time/lib_localtime.c is much closer to NuttX coding style. libc/time/private.h removed; incorporated into lib_localtime.c 2014-08-15 15:38:37 -06:00
Gregory Nutt
318270d849 Fix warning caused by change in mktime prototype 2014-08-12 13:50:08 -06:00
Gregory Nutt
7025465109 Adds support for localtime. From Max Neklyudov 2014-08-12 06:18:22 -06:00
Gregory Nutt
e4ab3198e1 Slightly improved nanosecond calculation 2014-08-10 13:11:52 -06:00
Gregory Nutt
320707fdfa SAMA5: Fix bugs in timer/counter interrupts and one-shot timer 2014-08-10 10:47:38 -06:00
Gregory Nutt
6e0acd7cd4 WM8904: Don't use MSEC2TICK in timeout calculation 2014-08-08 11:02:45 -06:00
Gregory Nutt
caba61999a Remove CONFIG_DISABLE_CLOCK 2014-08-07 12:35:24 -06:00
Gregory Nutt
e214382264 Audio: Change how the end of the audio stream is detected by the leaf audio component. This used by be done by looking for the first partial buffer. That does not work with the in-place sub-sampling performed by the PCM decoder: That always reduces the size of the buffer so that all buffers only partially filled by the time they get to the leaf. Now, a flag is set in the audio buffer flags set to indicate the final buffer in the stream. 2014-07-31 16:36:09 -06:00
Gregory Nutt
b7227f0088 Cosmetic changes, mostly to comments 2014-07-29 12:49:40 -06:00
Gregory Nutt
3384906cdd Lpc17xx Ethernet: Comment out an assertion that is reported to first inappropriately. From Max 2014-07-11 12:25:11 -06:00
Gregory Nutt
0da9aaeb09 Fix some recurring typos: postion->position, *atino->*ation 2014-07-08 13:12:36 -06:00
Gregory Nutt
befcb1c961 Fix some cloned errors in SAM GPIO interrupt setup 2014-07-07 15:54:37 -06:00
Gregory Nutt
60246e613b NET: emoved all includes of uip.h; added includes of ip.h wherever needed. Tried to fix problems of the now missing sneak inclusions because uip.h was removed. There are probably a few of these that were missed. 2014-07-04 19:13:08 -06:00
Gregory Nutt
fa29170aa7 Make variable definitions 'static const' when possible to save RAM usage. From Kosma Moczek 2014-06-30 07:39:51 -06:00
Gregory Nutt
5ac94ff988 Fixes for networking and tiny webserver from Max 2014-06-29 09:30:09 -06:00
Gregory Nutt
f0c90a39ca Change double_t to double in rint. Add rintf and rintl while we are at it 2014-06-28 10:14:29 -06:00
Gregory Nutt
33121dd0d0 Various changes associated with symbol tables. Most from Pelle Windestam 2014-06-27 08:14:07 -06:00
Gregory Nutt
2b5f8dbba5 Cosmetic cleanup 2014-06-18 08:24:53 -06:00
Gregory Nutt
038f10ed55 Add seekable standard streams 2014-06-14 16:19:42 -06:00
Gregory Nutt
0a331754f7 Add support for seekable raw streams 2014-06-14 15:46:59 -06:00
Gregory Nutt
24e603f23b Add support for seekable memory streams 2014-06-14 15:35:18 -06:00
Gregory Nutt
59846a8fe9 snprintf(): If size is zero, then snprintf() should return the size of the required buffer without writing anyting. From Sami Pelkonen 2014-05-30 08:53:43 -06:00
Gregory Nutt
2abe0dd6dd Change all variadic macros to C99 style 2014-05-22 09:01:51 -06:00
Gregory Nutt
972c4cbab5 Nucleo F401RE: Remove PX4 cruft that can in with the port 2014-04-22 12:18:08 -06:00
Gregory Nutt
3a1324741a More trailing whilespace removal 2014-04-13 14:32:20 -06:00
Gregory Nutt
890beea0b6 Remove dangling white space at the end of the line 2014-04-13 13:26:55 -06:00
Gregory Nutt
f7e5953804 Cosmetic changes for coding style; removal of dangling spaces at the end of lines 2014-04-13 13:18:06 -06:00
Gregory Nutt
494387b33b Make sure that there is one space after for 2014-04-12 13:28:22 -06:00
Gregory Nutt
303cc1902b Make sure that there is one space between if and condition 2014-04-12 12:53:19 -06:00