Thomas Veerman
a209c3ae12
Fix a ton of compiler warnings
...
This patch fixes most of current reasons to generate compiler warnings.
The changes consist of:
- adding missing casts
- hiding or unhiding function declarations
- including headers where missing
- add __UNCONST when assigning a const char * to a char *
- adding missing return statements
- changing some types from unsigned to signed, as the code seems to want
signed ints
- converting old-style function definitions to current style (i.e.,
void func(param1, param2) short param1, param2; {...} to
void func (short param1, short param2) {...})
- making the compiler silent about signed vs unsigned comparisons. We
have too many of those in the new libc to fix.
A number of bugs in the test set were fixed. These bugs were never
triggered with our old libc. Consequently, these tests are now forced to
link with the new libc or they will generate errors (in particular tests 43
and 55).
Most changes in NetBSD libc are limited to moving aroudn "#ifndef __minix"
or stuff related to Minix-specific things (code in sys-minix or gen/minix).
2011-11-14 10:07:49 +00:00
Thomas Veerman
8a266a478e
Increase gid_t and uid_t to 32 bits
...
Increase gid_t and uid_t to 32 bits and provide backwards compatibility
where needed.
2011-09-05 13:56:14 +00:00
Ben Gras
195190912f
malloc build fixes
2011-08-18 22:30:51 +00:00
Ben Gras
d477a9ed82
vm/ipc: only report signals when it matters to ipc
...
. ipc wants to know about processes that get
signals, so that it can break blocking ipc operations
. doing it for every single signal is wasteful
and causes the annoying 'no slot for signals' message
. this fix tells vm on a per-process basis it (ipc)
wants to be notified, i.e. only when it does any ipc calls
. move ipc config to separate config file while we're at it
2011-08-05 20:52:32 +00:00
Ben Gras
02081e4b62
rename mmap() and munmap()
...
. it's a good extra interface to have but doesn't
meet standardised functionality
. applications (in pkgsrc) find it and expect
full functionality the minix mmap doesn't offter
. on the whole probably better to hide these functions
(mmap and friends) until they are grown up; the base system
can use the new minix_* names
2011-07-16 13:01:19 +02:00
Evgeniy Ivanov
ef0a265086
New stat structure.
...
* VFS and installed MFSes must be in sync before and after this change *
Use struct stat from NetBSD. It requires adding new STAT, FSTAT and LSTAT
syscalls. Libc modification is both backward and forward compatible.
Also new struct stat uses modern field sizes to avoid ABI
incompatibility, when we update uid_t, gid_t and company.
Exceptions are ino_t and off_t in old libc (though paddings added).
2011-07-12 16:39:55 +02:00
Thomas Cort
66b369c62c
opendir(3): on success, don't clobber errno
...
The opendir(3) function was setting errno to ENOTDIR even
when the directory existed and was opened successfully. This
caused git to falsely detect an error.
This change moves the errno assignment into the failure code
block. It also adds a test to test24 to check for errno
changing when opendir(3) returns success.
2011-06-29 19:58:41 +02:00
Ben Gras
e785381d4d
introduce option to time assert()s
...
. remove a few asserts in the kernel and 64bi library
that are not compatible with the timing code
. change the TIME_BLOCKS code a little to work in-kernel
2011-06-24 16:00:42 +02:00
Ben Gras
e3f68488ee
fix many clang warnings in lib/
2011-06-23 19:25:36 +02:00
Antoine Leca
6d8d7a88b2
libc!setmode.c: Avoid #if inside macro call
...
#if inside macro call is undefined behaviour under the C standard
(3.8.3 paragraph 10 for C90, 6.8.10 paragraph 11 for C99).
The same effect can be achieved with a slightly more verbose construct,
putting the whole macro call inside the #ifdef/#else/#endif.
2011-06-23 17:54:17 +02:00
Ben Gras
c02833ced6
<timers.h> - add feature to time a code block
...
. also minor compile fixes for it
2011-06-06 09:04:11 +02:00
Dirk Vogt
0908191386
_mount.c: don't check for excutable if MS_EXISTING is set
2011-02-22 17:59:08 +00:00
Ben Gras
dee29bbd3c
some extra math functions from netbsd for netpbm.
2011-01-30 23:40:51 +00:00
Ben Gras
dc1cc91df1
<ansi.h> -> <minix/ansi.h>
2011-01-28 11:35:02 +00:00
Arun Thomas
4fe0dfa9aa
libc and csu updates for ELF
2010-12-10 23:04:04 +00:00
Arun Thomas
d824b54d82
csu/build support for ELF
2010-12-10 22:20:12 +00:00
Dirk Vogt
9ed280d1ec
decouple file system server start/termination from mount/umount
2010-11-23 19:34:56 +00:00
Arun Thomas
7a4149a3f5
For GCC/clang, don't build in ACK int64 routines
2010-11-19 12:36:44 +00:00
Tomas Hruby
504abf4b34
Inlining 64bit integer handling functions
...
- if gcc/clang is used the C functions that use long long can be
inlined to get better performance (yes, it makes difference)
2010-11-18 16:37:40 +00:00
Arun Thomas
f0ab18377d
GCC/clang: int64 routines in C
2010-11-12 18:38:10 +00:00
Arun Thomas
aaaad89244
Use int64 functions consistently
...
Instead of manipulating the u64_t type directly, use the
ex64hi()/ex64lo()/make64() functions.
2010-11-07 23:35:29 +00:00
Arun Thomas
998af6f111
Move minix/paths.h to paths.h
...
Also, merge in relevant macros from NetBSD
2010-11-06 20:40:15 +00:00
Ben Gras
efcfaf4b96
stdio: split vsprintf and vsnprintf
...
- workaround for linking problems
2010-11-02 22:05:40 +00:00
Ben Gras
51d9144e9f
stdio/freopen.c: fill __iotab table with stream pointer
...
- lets fclose()d and then freopen()ed streams be fclose()d again
without error
2010-11-02 22:02:50 +00:00
Ben Gras
09569d399f
stdio/fclose.c: reset _buf
...
- if the stream gets freopen()ed, avoid buffer being seen as valid
2010-11-02 22:01:47 +00:00
Erik van der Kouwe
ada0b4ca04
Fix warnings due to missing __dead attribute on exit
2010-10-05 07:25:47 +00:00
Tomas Hruby
74c5cd7668
The profile utility can set the sprofiling mode
...
- profile --nmi | --rtc sets the profiling mode
- --rtc is default, uses BIOS RTC, cannot profile kernel the presetted
frequency values apply
- --nmi is only available in APIC mode as it uses the NMI watchdog, -f
allows any frequency in Hz
- both modes use compatible data structures
2010-09-23 10:49:42 +00:00
David van Moolenbroek
354da24f5b
make getsysinfo() a system-land call
2010-09-14 21:50:05 +00:00
David van Moolenbroek
d7b10963c2
make library calls use ProcFS
2010-09-14 21:28:34 +00:00
Ben Gras
a5a8c57fe7
add EHOSTDOWN errno.
2010-09-14 11:51:41 +00:00
Ben Gras
23311d9819
lib: fixes to make clang not error
2010-09-13 15:50:54 +00:00
David van Moolenbroek
d29833c5aa
remove hardcoding of system.conf path in various service calls
2010-09-10 09:22:22 +00:00
Erik van der Kouwe
5cc29a6c7e
Make realpath deal with double slashes
2010-09-06 07:45:32 +00:00
Thomas Veerman
e8ddc0f46e
- Add support for file descriptor passing to PFS.
...
- For security reasons move some libc code to PFS.
- Fix a few bugs in PFS.
Contributed by Thomas Cort.
2010-08-30 13:46:44 +00:00
Thomas Veerman
2297e26660
Prepare headers to support file descriptor passing over UNIX Domain Sockets.
...
Contributed by Thomas Cort.
2010-08-30 13:41:22 +00:00
Ben Gras
5d6c2aae0a
gcov support, based on work contributed by Anton Kuijsten.
2010-08-25 13:06:43 +00:00
Arun Thomas
de231a713e
Move MIN() and MAX() macros to sys/params.h
2010-08-21 13:10:41 +00:00
Erik van der Kouwe
292f98dc29
Minor malloc-debug fixes
2010-08-20 19:50:36 +00:00
Erik van der Kouwe
2a736d0c2e
Add MALLOC_DEBUG env var to debug applications using malloc
2010-08-20 19:16:31 +00:00
Erik van der Kouwe
b337d3f8e5
move rrrrrrread_tsc from libsys to libc so anyone can use it
2010-08-20 18:43:56 +00:00
Arun Thomas
9a21d1a2fd
Macros for symbols used in both ASM and C
...
-The macros take care of prepending the leading underscore when
necessary.
2010-08-17 16:44:07 +00:00
Erik van der Kouwe
551374c228
Add ftello function
2010-08-16 17:07:40 +00:00
Erik van der Kouwe
a3e4dcafe0
Add fseeko function
2010-08-16 17:06:08 +00:00
Erik van der Kouwe
a719ab7780
Auto-detect ext2 partitions in mount
2010-08-03 06:28:58 +00:00
Ben Gras
05bbf81f93
new EPFNOSUPPORT errno
2010-07-28 16:32:21 +00:00
Arun Thomas
ee1cabf06c
Import poll() from NetBSD's libnbcompat
2010-07-26 20:46:04 +00:00
Ben Gras
541b5c5c38
inet_pton(), patched by Thomas Cort.
2010-07-26 14:47:10 +00:00
Ben Gras
9f0364df60
lib - sanity check for group_from_gid etc.
2010-07-24 10:40:55 +00:00
Ben Gras
34a58c8d82
inet_ntop, contributed by Thomas Cort.
2010-07-23 09:54:47 +00:00
Erik van der Kouwe
f389ad2655
Move sensitive instructions from libc into kernel
2010-07-23 07:12:47 +00:00
Erik van der Kouwe
a06e5c383d
Throw out ins[bwl] and out[bwl] from libc as they are not used
2010-07-23 07:10:47 +00:00
Ben Gras
c4bb6abc2b
vsprintf: fix special yet useful case for vsprintf where n < 1.
...
reported by jaldhar.
2010-07-22 22:35:44 +00:00
Ben Gras
ffe7e9166e
lib - extra file for libutil; strnstr and strcasestr from freebsd for libc.
2010-07-19 10:46:26 +00:00
Ben Gras
09c18bc918
lib: bugfix for mbstowcs, debugged by Gautam Tirumala.
2010-07-18 20:57:55 +00:00
Ben Gras
4aca722796
lib - link in new u64 functions.
2010-07-16 00:12:51 +00:00
Ben Gras
6c66933f90
64-bit bitwise manipulation functions, by Gautam Tirumala.
2010-07-15 23:48:56 +00:00
Thomas Veerman
f531dba2d2
Add support for UNIX Domain Sockets to the C lib. Contributed by Thomas Cort
2010-07-15 14:05:23 +00:00
Thomas Veerman
ecc8a52f82
Add getnucred system call. Contributed by Thomas Cort
2010-07-15 13:24:57 +00:00
Thomas Veerman
ca0bed1400
Add EOVERFLOW error condition
2010-07-15 12:36:41 +00:00
Ben Gras
8a0c10fcb9
lib: mkdtemp(), contributed by by Gautam Tirumala
2010-07-14 22:45:28 +00:00
Ben Gras
2639ae9b17
libc: add db code from netbsd
2010-07-14 17:46:18 +00:00
Ben Gras
8d24932c80
lib: don't give back the same temporary filenames even if removed.
...
workaround for what seems to be a clang/llvm bug/assumption.
2010-07-14 15:18:50 +00:00
Cristiano Giuffrida
f8a8ea0a79
Dynamic configuration in system.conf for boot system services.
2010-07-13 21:11:44 +00:00
Ben Gras
f6e558f5d4
errno EFTYPE
2010-07-13 20:05:47 +00:00
Cristiano Giuffrida
8cedace2f5
Scheduling parameters out of the kernel.
2010-07-13 15:30:17 +00:00
Arun Thomas
bcaf746508
Import strsep() from NetBSD's libnbcompat
...
Ported by Gautam Tirumala
2010-07-12 17:41:31 +00:00
Arun Thomas
652618e458
shquote() from NetBSD's libnbcompat
...
Ported by Gautam Tirumala
2010-07-12 17:32:57 +00:00
Arun Thomas
1cee6fe95e
Import asprintf() and vasprintf()
...
Ported from libnbcompat by Gautam Tirumala
2010-07-11 13:46:58 +00:00
Ben Gras
68db8ed0b9
lib: fixes for warnings that clang has for libraries.
2010-07-06 12:08:22 +00:00
Erik van der Kouwe
37325bd7c5
Make service ABI backwards compatible again
2010-07-03 05:02:59 +00:00
Erik van der Kouwe
b5ae3961bb
Fix unintended changes in r7614
2010-07-01 11:56:02 +00:00
Erik van der Kouwe
23284ee7bd
User-space scheduling for system processes
2010-07-01 08:32:33 +00:00
Ben Gras
098412be83
small fixes for pkgsrc by Buccapatnam Tirumala, Gautam.
2010-06-30 12:18:34 +00:00
Cristiano Giuffrida
180358ffb4
Give RS a page table.
2010-06-28 22:07:49 +00:00
Cristiano Giuffrida
06700d05d1
Give RS a page table.
2010-06-28 21:53:37 +00:00
Ben Gras
8379b08845
library function to retrieve kernel proc table and sanity check it
2010-06-28 11:05:15 +00:00
Ben Gras
01b5238d50
getsubopt: use regular assert()s
2010-06-26 02:37:17 +00:00
Ben Gras
aa6ff4c8be
lib: setprogname() + getsubopt()
2010-06-26 00:44:24 +00:00
Arun Thomas
c0c8d25799
Rename mkfiles from minix.*.mk to bsd.*.mk
...
Makes things easier for pkgsrc
2010-06-25 18:29:09 +00:00
Ben Gras
45e4cce8c2
libc stubs for statvfs, contributed by Buccapatnam Tirumala, Gautam.
2010-06-23 23:51:29 +00:00
Erik van der Kouwe
50539c12f5
Remove obsolete mstats call
2010-06-23 10:43:08 +00:00
Ben Gras
24a5f48921
lib - a pwrite() implementation (Contributed by Buccapatnam Tirumala, Gautam)
2010-06-22 22:04:43 +00:00
Ben Gras
ddc3f62290
strptime() for minix.
2010-06-22 21:42:49 +00:00
Ben Gras
08f731bae0
original strptime.
2010-06-22 21:41:56 +00:00
Ben Gras
08e4312998
forget netbsd strptime.
2010-06-22 21:41:20 +00:00
Ben Gras
c7050eea55
original netbsd strptime
2010-06-22 21:37:54 +00:00
Ben Gras
81056ac999
stdio: j modifier for %d. (Contributed by Buccapatnam Tirumala, Gautam)
2010-06-22 16:22:17 +00:00
Ben Gras
82dee9dbc3
add LC_MESSAGES
2010-06-22 09:31:16 +00:00
Ben Gras
6c0fcd575e
lib: getproname: only return last path component
2010-06-20 00:24:35 +00:00
Ben Gras
f60593cc35
libraries: fgetln() from pkgsrc branch.
2010-06-18 14:02:00 +00:00
Arun Thomas
042b5bf606
We have sys/cdefs.h now, so remove hacks.
2010-06-17 15:14:57 +00:00
Arun Thomas
1b2c01db1b
Makefile updates:
...
Turn on optimization
Remove some redundancy in FLAGS
2010-06-11 16:05:36 +00:00
Arun Thomas
f0a158d8c1
More cleanup to remove MM and FS references
2010-06-10 14:04:46 +00:00
David van Moolenbroek
2758519ed2
Change default hostname resolution order
...
Hostnames that contain at least one period, are now first attempted
to be resolved as FQDNs, before adding local domains is tried.
2010-06-10 11:14:36 +00:00
Ben Gras
1ce7983ee3
lib: declarations that needed ANSIfication since prototypes are declared
2010-06-09 13:01:11 +00:00
Ben Gras
ba9990cc00
libc: minor minix changes for new netbsd files
2010-06-09 12:09:39 +00:00
Ben Gras
60d52d68da
libc: add original netbsd files
2010-06-09 12:08:32 +00:00
Tomas Hruby
1207fcc6f0
int to endpoint_t conversions in mmap
2010-06-09 09:14:53 +00:00
Ben Gras
cccfe8e0ce
lib: move tzfile.h from lib/libc/stdtime/ to include/ for general usage.
2010-06-08 19:11:42 +00:00
Arun Thomas
4c10a31440
Remove legacy MM, FS, and FS_PROC_NR macros
2010-06-08 13:58:01 +00:00