Commit Graph

644 Commits

Author SHA1 Message Date
Ingo Weinhold
6e19c86ab0 Fixed potential warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 12:52:34 +00:00
Ingo Weinhold
3ca1072d44 * Reimplemented pthread_once. The old one was neither thread-safe nor
particularly efficient.
* pthread_mutex implementation:
  - Removed the pthread_mutex_t indirection (the type was a pointer to
    the actual structure which was allocated on the heap), as it made
    sharing the mutex between processes impossible.
  - Removed the distinction between process shared and non-shared
    mutexes. Benaphores work just as well in shared memory, so we always
    use them.
* Fixed some static initializer macros. PTHREAD_COND_INITIALIZER is
  still broken, since it doesn't work in C code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-13 01:50:54 +00:00
Ingo Weinhold
370602bff6 Added pthread rwlock support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-12 13:56:11 +00:00
Ingo Weinhold
b932012815 Patch by Andreas Faerber:
Replaced single-line comments by multi-line comments for ANSI C
compliance.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-10 21:30:34 +00:00
Ingo Weinhold
f7cc12b389 Implemented pthread_attr_{g,s}etstacksize(). Also added commented-out
prototypes for the missing pthread_attr_*() functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-09 01:36:49 +00:00
Ingo Weinhold
f23d0a6242 Implement shm_open() and shm_unlink(). The shared memory objects are
simply created as files in /boot/var/shared_memory/. The Bootscript
clears the directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 13:42:33 +00:00
Ingo Weinhold
3dfe682f55 * Added some padding to the sem_t structure.
* Changed the semantics of unnamed semaphores. Before parent and child
  of a fork() would always share an earlier created semaphore. Now we do
  that only, if the "shared" parameter of sem_init() was true. That's
  still not quite the behavior Linux and Solaris have, but should be
  perfectly fine with how reasonable code would use the API.
* There's a global table for shared unnamed semaphores now. ATM a
  semaphore is leaked when no one explicitly destroys it (just as with
  named sems).
* Enforce per-team and global semaphore number limits.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 01:39:49 +00:00
Ingo Weinhold
01b1098795 * Fixed some misunderstanding regarding the _POSIX_* macros. They are
not supposed to be passed to pathconf() or sysconf().
* Added POSIX semaphore related macros.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 01:27:31 +00:00
Ingo Weinhold
5142c2ac86 Added support for POSIX semaphores (the ones from the XSI extension
Realtime option group). The implementation should be complete, but is
totally untested yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25326 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-06 03:39:36 +00:00
Ingo Weinhold
d29deffa2c Added the Linuxish SO_PEERCRED.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 00:28:27 +00:00
Ingo Weinhold
0e42d1bcd8 Our sockaddr_storage is only 128 bytes long. Hence invocations of bind()
or connect() that passed sizeof(sockaddr_un) would always fail. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-24 22:30:54 +00:00
Ingo Weinhold
fb913b19be Added POSIX functions posix_openpt(), grantpt(), ptsname(), and
unlockpt(), which provide a portable way of opening a pty.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-24 21:29:13 +00:00
Axel Dörfler
945fb7e32a * Replaced destructor with destructorFunc to please python - it's not a reserved
keyword, so this stupid python should really be fixed instead.
* Enforced the 80 column limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25090 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 21:20:07 +00:00
Ingo Weinhold
a94ce1c912 * Reorganized the passwd and group support: A dedicated thread in the
registrar provides access to the DBs via a port message based
  protocol. The functions in libroot just ask the registrar now.
* Added Linuxish shadow passwd support. No putspent() though -- we'll
  provide private functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-17 16:19:18 +00:00
Ingo Weinhold
3cf7ecd1e4 * Added <sys/mman.h> header. It declares only mmap() and munmap() yet
and defines the macros needed by them.
* Renamed syscall sys_vm_map_file() to _kern_map_file() and changed the
  path to an FD parameter. Changed vm_map_file() accordingly and
  adjusted the kernel ELF loader and the runtime loader.
* Added syscall _kern_unmap_memory().
* Added bool unmapAddressRange parameter to vm_create_anonymous_area()
  and map_backing_store(). If true and the address specification is
  B_EXACT_ADDRESS, all areas in the specified address range will be
  deleted (unless an area is covered only partially).
* Introduced B_SHARED_AREA flag, which is set on areas that have been
  created by {vm,_user}_map_file() with REGION_NO_PRIVATE_MAP. When
  fork()ing those areas won't be copied CoW, but rather be cloned. This
  is needed for mmap() MAP_SHARED.
* {vm,_user}_map_file() also accept an FD argument < 0, in which case an
  anonymous area is created.
* Implemented mmap() and munmap(). Currently there's the restriction
  that we can't partially unmap areas. Otherwise the functions should be
  rather compliant. We also support the non-POSIX extension
  MAP_ANONYMOUS.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-13 22:52:11 +00:00
Ingo Weinhold
ac4630e161 * Added <sys/param.h> include, which is needed for _ALIGN().
* Added SCM_RIGHTS macro.
* Added a few non-standard but widely-used CMSG_*() macros.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-12 08:30:25 +00:00
Ingo Weinhold
bab4c3bbff Changed the type of msghdr::{msg_name,msg_control} to void* as dictated
by POSIX.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-11 03:27:53 +00:00
Ingo Weinhold
ef7cb2253b Rather use a char[] for the path. uint8_t[] is rather uncomfortable to
use with the string and *printf() functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-10 03:06:11 +00:00
Ingo Weinhold
64cd033664 Added socket macros.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-10 03:04:03 +00:00
Axel Dörfler
3d7e508f7b Added sys/poll.h header by popular request (see ticket #2037).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-08 09:17:07 +00:00
Axel Dörfler
b9fe86d2d7 * Added pthread_setconcurrency(), and pthread_getconcurrency() functions.
* Since we use a 1:1 mapping, they don't do anything besides remembering the
  level set, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24855 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-07 10:57:01 +00:00
François Revol
038ed3d1f2 Add _SC_PAGE_SIZE sysconf().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-07 01:08:18 +00:00
Stephan Aßmus
42014658ad Applied patch by James Woodcock:
* Implemented POSIX getpagesize() function in libroot.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 08:50:56 +00:00
Ingo Weinhold
f8cb30712e * Replaced the dummy implementations of the <grp.h> and <pwd.h>
functions by ones reading /etc/{group,passwd}.
* Added quasi-standard getpwent_r() and getgrent_r().
* Added _SC_GETGR_R_SIZE_MAX and _SC_GETPW_R_SIZE_MAX sysconf()
  constants.
* Moved initgroups() and getgrouplist() definition to grp.cpp. They use
  the same backend as the <grp.h> functions.
* Set the permissions of files created by the build system to what they
  should be on the image (executables: 755, others: 644). Otherwise only
  root could do anything under Haiku.
* Added build system variables HAIKU_ROOT_USER_NAME and
  HAIKU_ROOT_USER_REAL_NAME to customize name and real name of Haiku's
  root user.
* Added build system rules AddUserToHaikuImage and AddGroupToHaikuImage
  for adding additional users and groups (by default only root user and
  group and a "users" group are created).
* Adjusted BIND port and coreutils config.h files according to what
  features have become available.
* Fixed HAIKU_DOCUMENTATION_OBJECT_DIR definition. Untested, but it used
  a wrong variable name before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 14:02:52 +00:00
Axel Dörfler
c80e610789 * Added start of an implementation of pthread_cancel().
* Implemented pthread_setcanceltype(), pthread_setcancelstate(), and
  pthread_testcancel().
* In the previous commit, I also made pthread_private.h self-contained.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 18:49:19 +00:00
Axel Dörfler
a635399b07 * Rearranged pthread thread support a bit: there is now a pthread_thread
structure that is attached (via TLS) to each pthread.
* Implemented support for pthread_cleanup_{push|pop}().
* I haven't really been able to test these changes, yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 15:10:00 +00:00
Ingo Weinhold
1bc2fbc25d Added BSDish timer*() macros.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 17:28:31 +00:00
Ingo Weinhold
360be1fc45 * Implemented support for chroot:
- Added a "root" vnode to the io_context. It is used for resolving
    paths and converting nodes to paths instead of sRoot. Some more
    passing around of io_context structures was necessary.
  - Introduced a new lock sIOContextRootLock to protect
    io_context::root. The current uses of io_context::io_mutex
    (put_vnode(), remove_vnode() while holding it) looked too suspicious
    to use that mutex in vnode_path_to_vnode().
  - Added _kern_change_root() syscall and chroot() libroot function.
  - Added chroot coreutils program to the image. Funnily it seems to be
    much easier to set up a little jail than under Linux (just copy
    bash and libroot.so into respective subdirs; mount another pipefs
    if you want pipe support).
    With Haiku allowing direct access to directories via inode IDs
    jailing is obviously not very secure at the moment.
  - Added /var/empty to the image. It will be the chroot target for ssh.
* Changed vfs.cpp:get_cwd() so that the io_context::io_mutex is no
  longer held when calling dir_vnode_to_path().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 05:59:54 +00:00
Ingo Weinhold
290946ce80 * Implemented some basics for supplementary groups support:
- The kernel stores the group IDs in the team structure. They are
    correctly inherited on fork() and load_image_etc().
  - Implemented getgroups() for real, i.e. it retrieves the groups
    associated with the process.
  - Implemented setgroups(), initgroups() and (the BSDish)
    getgrouplist(). The latter two read the group information from the
    "group database" /etc/group (if existing).
  - Change the BIND port config, since we do have getgrouplist() now.
* The set-uid feature was broken when the path to the executable was
  relative, since we used stat(), which, in the kernel, uses the kernel
  IO context.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 00:08:13 +00:00
Ingo Weinhold
f244a07d99 Corrected value for _POSIX_NGROUPS_MAX.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24668 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 23:58:27 +00:00
Ingo Weinhold
22611e781a Patch by Curtis Wanner:
* Added some limit macros.
* Removed the "L" suffix from [U]INT32_MAX.
* Reordered some definitions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 14:16:07 +00:00
Ingo Weinhold
29674ea8cb Patch by Vasilis Kaoutsis:
* Check against maximum baud rate in cfset{i,o}speed().
* Changed some functions comments to doxygen style.
* Sorted speed macros in termios.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 12:52:10 +00:00
Ingo Weinhold
79e1d3770c Not that I know what I'm doing...
Moved nameser_compat.h to our public headers (arpa/inet) and include in
<arpa/nameser.h>. That's solved similarly in BONE. At any rate OpenSSH
is now happy that HEADER exists.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 12:37:05 +00:00
Ingo Weinhold
479a926477 Define PF_LOCAL and PF_UNIX for compatibility reasons. Makes OpenSSH
happier.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 12:21:45 +00:00
Ingo Weinhold
0fddf2f088 Define howmany(). It seems to be what the BSDs are using. Linux
defines it, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 12:20:40 +00:00
Ingo Weinhold
5d2044f643 POSIX headers should not include BeOS/Haiku headers. Should help with
flex's pthread test.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 14:25:06 +00:00
Ingo Weinhold
b564056dda GCC provides <stdbool.h>.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 07:42:07 +00:00
Ingo Weinhold
c7c82420e1 _single_threaded should have C linkage. Was for some reason only a
problem with gcc 4.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-25 01:56:46 +00:00
Ingo Weinhold
e26a4ce3e9 Define __THROW.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-23 01:21:53 +00:00
Ingo Weinhold
2754fa8772 bcopy() is supposed to be overlap-save.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-22 18:13:42 +00:00
Ingo Weinhold
62319d069e Commented out real-time signal related stuff (SA_SIGINFO, waitid()) to
prevent "configure" scripts from thinking we do actually support it.
Having real-time signals would be nice though (cf. #1935).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-18 17:33:03 +00:00
Ingo Weinhold
404a0fea46 Second stab at reorganizing standard/gcc headers. This time it not only
builds on Linux with gcc 2 and 4, but the images do even run. :-) Not
tested on BeOS.

* Removed stddef.h and stdarg.h. They are provided by the compiler.
* Adjusted size_t.h, wchar_t.h, and wchar.h accordingly.
* Made stdio.h avoid gcc 2.95.3's fixincludes hack stdio_va_list
* Added gcc 2.95.3 headers to the repository. They are used instead of
  the headers of the gcc 2.95.3's we use to compile Haiku with. Should
  avoid build problems with the BeOS native compiler.

For sake of personal recreation you can rebuild the cross gcc 2.95.3,
but the only thing that changed is its header directory
(lib/gcc-lib/.../include), which isn't used anymore. Replacing it with
headers/build/gcc-2.95.3 should have the same effect as rebuilding, BTW.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-16 17:21:37 +00:00
Ingo Weinhold
0cfb40d0dc Define HUGE_VAL in <math.h> conditionally. That's what gcc's fixincludes
hack math_huge_val_ifndef does, anyway. We do it ourselves and remove
the therefore superfluous gcc math.h header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24412 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-16 16:39:06 +00:00
Ingo Weinhold
d8ce64a27f Reverted r24406. If it builds, it doesn't always work as well. The
change resulted in "version mismatch between boot loader and kernel". So
apparently the size of some type changed unintentionally.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-15 19:23:05 +00:00
Ingo Weinhold
6191d9a8da * Removed our stddef.h. We don't need it, since gcc comes with one that
under Haiku overrides ours anyway.
* Adjusted size_t.h, wchar_t.h, wchar.h accordingly. This should fix the
  annoying "ssize_t redefined" warnings when compiling under Haiku.
* When building Haiku the gcc headers come first in the include
  search path now, as it should be. The respective TODO suggested that
  this might break the build depending on compiler version and host
  platform. I've tested with Linux gcc 2 and gcc 4, which work fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-15 18:41:46 +00:00
Ingo Weinhold
4eb3560949 * Added real, effective and saved set- user and group IDs to the team
structure. They are properly inherited and updated on
  fork(), load_image(), and exec().
* Implemented the get[e]{u,g}id(), set[[r]e]{u,g}id() family for real.
* getgroups() also calls the kernel now, but only returns the effective
  group ID. Supplementary groups support is still missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-11 17:12:02 +00:00
Jérôme Duval
6213408838 added search.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24091 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 13:41:01 +00:00
Jérôme Duval
b3918e2f66 added SIZE_MAX to stdint.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24085 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-23 22:31:19 +00:00
Axel Dörfler
3a0782dc15 Added printf()/scanf() type definitions, courtesy of Curtis Wanner - thanks
a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-21 00:08:03 +00:00
Axel Dörfler
392eb518d5 * Added gcvt() implementation - this fixes bug #1757.
* Added gcvt(), ecvt(), and fcvt() prototypes to stdlib.h - they are all
  marked legacy, but are still part of the POSIX standard, so we might want
  to implement them if the need arises.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-06 17:11:02 +00:00
Axel Dörfler
a32a4683ff * Implemented flock() semantics to the advisory locking backend. Not tested
(must also compare to BSD; I've looked at their sources, but I might have
  missed something).
* Added sys/file.h and the flock() system call.
* common_fcntl() could forget to put back the file descriptor on some error
  conditions (I guess we should introduce and use a DescriptorGetter class).
* Cleaned up fcntl.h, moved the BSD extensions S_IREAD and S_IWRITE to
  sys/stat.h where they belong, and added the missing S_IEXEC to them.
* Added some more comments.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-03 15:37:31 +00:00
Axel Dörfler
e5bc2a9e7a Added BSD extension vsyslog() - is also found on Linux.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-03 15:31:16 +00:00
Axel Dörfler
b4fd412b3e * Added BSD's FD_COPY() macro (it's not POSIX, though).
* Some other minor improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-02 17:32:01 +00:00
Jérôme Duval
d2d6724788 added pthread_once() implementation and tests
there is still a TODO on an init race condition 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-07 21:02:59 +00:00
Jérôme Duval
4ff6af6d52 applied patch by kaliber
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23075 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-12-07 19:30:34 +00:00
Ryan Leavengood
aaa10d6056 Added trunc to the math headers. I need this for JavaScriptCore. It is already
defined in libroot.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-18 16:54:48 +00:00
Ingo Weinhold
f969977bc1 Patch by Vasilis Kaoutsis (modified by myself): Implemented sigset().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-18 16:39:18 +00:00
Ingo Weinhold
99ed286c94 Patch by Vasilis Kaoutsis: Implemented sigrelse().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-09 23:23:46 +00:00
Ingo Weinhold
0a1968cf8f Patch by Vasilis Kaoutsis: Implemented sighold().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-06 22:11:43 +00:00
Ingo Weinhold
7154471870 Removed inline versions of sigismember(), sigaddset(), and sigdelset(). They
weren't in sync with the non-inline version in libroot anymore, and aren't
really performance-critical anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-04 17:43:44 +00:00
Ingo Weinhold
74fa73bac6 Patch by Vasilis Kaoutsis: Implemented sigignore(). Small changes by myself.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-01 18:03:36 +00:00
François Revol
0e26d146ec tag warnings with M68K:
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-25 12:43:05 +00:00
François Revol
5d31dc1586 Grmbl, wrong type!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-25 01:45:09 +00:00
François Revol
2f6b2f8612 missing semi-colon.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-25 01:41:28 +00:00
François Revol
82a9fd6a48 Add m68k to the big endian family.
Remove DOS CR from some files.
Add setjmp stuff for m68k (unfinished).
Moved arch specific stuff out of signal.h to arch/<arch>/signal.h
Added m68k vreg for signal.h (unfinished).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-25 00:36:36 +00:00
Ingo Weinhold
6bd2f399e8 Patch by Vasilis Kaoutsis: Implemented killpg().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-24 13:49:42 +00:00
Axel Dörfler
15ab0bcf01 * int32_t, uint32_t are now of type "int", and no longer of type "long".
This should help to reduce the number of warnings imported code will throw
  during compilation (helps a lot with tcpdump, for example).
* Since long is 64 bit on 64 bit platforms, we might want to think about doing
  that change for the Haiku types int32 and uint32 as well.
* Fixed several occurences of hidden type problems.
* Fixed build of the stack and TCP under BeOS.
* Fixed incorrect typedef in socket_interface.h.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-21 20:10:43 +00:00
Ingo Weinhold
cb93a65449 Patch by Vasilis Kaoutsis: Added and implemented lockf() using fcntl() locking.
Small change and notes on standard compliance by myself.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-20 19:51:49 +00:00
Jérôme Duval
e4bbf18b3f added an implementation for nanosleep() based on snooze()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-25 19:18:27 +00:00
Ryan Leavengood
550a30a0b7 I needed Pthread condition variables for WebKit, so I implemented
them. I have tested this with a simple test program I downloaded
from the internet. We get the same result as on Linux, so I think
this is good. I will test it more with WebKit later.

Our Pthreads implementation is still missing some stuff, but this
adds a good chunk.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-22 16:30:22 +00:00
Ingo Weinhold
923efaa872 * We store the ID of the controlling terminal and the foreground process
group ID with the session and let the terminal update them.
* Added an "orphaned" flag to the process_group structure and code to
  maintain it.
* Handle the death of a controlling process correctly: The
  foreground process group gets a SIGHUP and all newly-orphaned process
  groups containing at least one stopped processes are sent
  SIGHUP+SIGCONT.
* The tty handles the O_NOCTTY flag correctly, now.
* The tty handles reads/writes from processes from other sessions
  correctly, now.
* Handle tcsetpgrp() from background processes correctly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-06 02:16:25 +00:00
Axel Dörfler
5e1d6fb269 * Added _ALIGN() and _ALIGNBYTES macros.
* Added cmsg macros.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-04 21:36:59 +00:00
Marcus Overhagen
20c4c9e77e Don't trust the user, and enforce the iovec limit.
Also check for negative positions smaller -1
(as -1 means using current address).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-21 19:07:10 +00:00
Axel Dörfler
a728651f04 Some more work on the signal code:
* get_signal_stack() checked the wrong sig_action field (index is signal-1), also,
  it had an off-by-one error in the stack range check.
* factored out a restart_syscall() function to avoid code duplication
* arch_setup_signal_frame() relied on the fact that vregs and the signal stack code
  is a multiple of 4 bytes in size.
* Fixed sigaction(): it did return the error code directly instead of setting errno.
* signal() actually had a work-around for the broken sigaction()...
* Replaced the sig_func_t typedef with a sighandler_t typedef - this is non-standard
  anyway, but now we're at least compatible with the GNU world instead of introducing
  our own solution (BSD seems to use sig_t here, BTW).
* Removed now unused sigval structure from the header; it should be added again as
  soon as we start supporting it.
* SA_RESETHAND and SA_ONESHOT are the same thing; the former did not work before.
* Made the non-standard SA_* flags refer to the standard ones instead of the other
  way around.
* Added a test application for various signal features - works fine under Haiku,
  tested also under Linux and BeOS (the latter fails as it does not support SA_RESTART).
  More tests should be added, though.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21999 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-17 11:01:09 +00:00
Axel Dörfler
f1cea0512b Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 17:05:14 +00:00
Axel Dörfler
dfd5242e7f Even though Korli beat me, I've updated the posix_memalign() function to be more standards
compliant:
* it now checks the alignment is a multiple of 4 (needs to be changed for 64 bit architectures)
* it no longer sets errno.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 10:04:44 +00:00
Jérôme Duval
bf7beb500c added posix_memalign()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 09:19:56 +00:00
Stephan Aßmus
7f8d0be06f * fix ticket #1365, isinf(x) -> isinf(value)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-08 09:14:38 +00:00
Jérôme Duval
84324de507 added an empty implementation of confstr()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-03 18:13:55 +00:00
Hugo Santos
36880dfbed make tcphdr public, it is used by several applications.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21068 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-08 13:10:45 +00:00
Hugo Santos
9534d90eb9 added IFM_AUTO to if_media and ifconfig.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-07 05:28:55 +00:00
Ingo Weinhold
81149059e2 Removed kludge that was only necessary for building the old bfs_shell.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-04 07:59:47 +00:00
Hugo Santos
09b89797af added ADDMULTI/REMMULTI support to ipro1000. Also cleaned up the compat. layer a bit to reuse some of the system's definitions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-05-02 00:10:00 +00:00
Hugo Santos
75f1f9e04a added two more test multicast applications: multicat/multisend. sockaddr_in6/in6_addr must be visible through <netinet/in.h>, fixed that as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-30 16:56:58 +00:00
Hugo Santos
46527f6806 initial steps towards IPv4 Multicast Filter Delta API (RFC 3678)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-15 02:44:01 +00:00
Jérôme Duval
72b4b94081 use __builtin_offsetof for gcc4 and superior, it avoids a gcc4 broken build with template use of offsetof()
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-12 18:36:37 +00:00
Hugo Santos
36883c5516 ipro1000: added ETHER_GET_LINK_STATE support
* use em_media_status to get link status
 * added IFM_1000_SX (Fiber Optic) to net/if_media.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-04 12:50:54 +00:00
Axel Dörfler
1a3ab92b81 * Rewrote ether_driver.h, removed some BONE stuff we don't support at this point;
it might also be a good idea to change the constants to better match the usual
  style.
* Added a BSD-style if_media.h.
* Added interface flags IFF_LINK, IFF_AUTO_CONFIGURED, and IFF_CONFIGURING. The
  former will be set automatically by the stack, the rest will be set by the
  net_server depending on the current state.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-03 14:42:07 +00:00
Axel Dörfler
2d55afcdf7 Support getting route information for a specific destination
using SIOCGETRT. Patch by Hugo Santos.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-04-01 12:06:16 +00:00
Axel Dörfler
bdfc47dbcd * Fixed the test for equality when a known ARP reply came in - you should no longer
see the "ARP entry updated with different address" message.
* sockaddr_dl::sdl_data is now unsigned (uint8_t instead of char).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20399 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-20 22:21:36 +00:00
Ingo Weinhold
2c97a8d164 Use -I instead of -isystem for system header directories when building
with gcc 4. Fixed resulting build errors (gcc is more lenient for
headers in -isystem directories).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-14 20:36:42 +00:00
Ingo Weinhold
30589be58b Added C++ guard. I don't know, why we define the <wctype.h> protos both
there and in <wchar.h>. Any reason for not removing them in <wctype.h>? Or
maybe even nicer reverse the inclusion direction, i.e. remove the
duplicate protos in <wchar.h> and include <wctype.h> instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20317 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-03-04 02:31:43 +00:00
Axel Dörfler
1beeb96080 setpgrp() returns a pid_t, not an int.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-29 13:31:24 +00:00
François Revol
6181d22fb0 Change IPPROTO_* from enum to #defines. This fixes #992.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-25 16:37:06 +00:00
Jérôme Duval
a2758a418b replaced size_t with socklen_t where appropriate following POSIX
Axel, I hope you don't mind :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-08 20:57:28 +00:00
Axel Dörfler
83e805ad15 * Added a note that the flock() definitions are misplaced here.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-01-06 17:25:52 +00:00
Axel Dörfler
c2c739ce33 * Removed superfluous prototypes from in.h. Minor cleanup.
* Fixed in6.h header. to be able to be compiled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-18 17:12:54 +00:00
Axel Dörfler
caddb025c9 Added sys/un.h header file - AF_UNIX is still unsupported, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19492 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 16:12:17 +00:00
Axel Dörfler
a7854360ac Added vfork() as a wrapper to fork().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-12-13 14:50:14 +00:00
Axel Dörfler
0ce94a8f47 * Rewrote tcp.h header - however, I think it should only include the TCP options
that can be set via setsockopt().
* For now, the struct tcphdr and its definitions are also part of the header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19383 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-11-28 23:02:30 +00:00
Axel Dörfler
5adca30a18 Merge of branches/team/network/new_stack - not yet complete as SVN does only support
replacing files when merging when you don't have deleted them manually (for some reason,
it only works as part of the merge operation, and we didn't copy the whole tree to
have "a fresh start" - next time we know better, at least if SVN still suffers from
that same limitation).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-08-08 12:33:33 +00:00
Ithamar R. Adema
62b4effa0a * Fixup some more headers, following axeld's lead with stdint.h (new_stack didn't compile for me without these).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-07-03 03:27:04 +00:00
Jérôme Duval
4e0eae1865 patch from Olivier Coursiere for better error output in ping
change the size parameter type of several functions in sys/socket.h to match POSIX
compat libs and legacy headers keep the original R5 type (though I make a change for this)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-23 12:22:26 +00:00
Axel Dörfler
63a9a8f72a Enabling the extended stat() versions had unforeseen consequences (broke the build,
src/bin/coreutils/src/cp.c, line 542 needs stat() exported), therefore, I disabled
it for now again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 21:19:37 +00:00
Jérôme Duval
954f408f50 * PTHREAD_MUTEX_INITIALIZER inits to NULL, pthread_mutex_lock now call pthread_mutex_init to support this PTHREAD_MUTEX_INITIALIZER
* pthread_key_create and pthread_key_delete now manages correctly a list of key/destructor
* pthread_create now uses a private thread function to add a "on_exit_thread" call for destructors
* pthread_join now returns B_OK in every case, and, as a joinable thread could already be gone, wait_for_thread would not find it


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 14:07:34 +00:00
Axel Dörfler
7b3d36e5aa * BEntry::GetStat() and BNode::GetStat() used sizeof(struct stat) for the kernel
syscall, but they could not know if R5 code called them (in which case the stat
  size has a different size). We now always only return the R5 stat structure here.
  This fixes bug #420. We might want to find a different solution to this problem,
  though.
* Be got SYMLINK_MAX wrong - it's not the maximum number of links (that's SYMLOOP_MAX),
  but the maximum size of a symlink buffer. Added missing SYMLOOP_MAX and SYMLINK_MAX
  constants to limits.h.
* Fixes MAXSYMLINKS to use SYMLOOP_MAX, instead of SYMLINKS_MAX (which doesn't exist
  in POSIX specs, but we (intentionally) break source compatibility here).
* Reenabled the Haiku versions of stat(), fstat(), and lstat() when build for Haiku.
* Removed OpenBeOS namespace stuff from the files I touched.
* Removed superfluous StorageDefs.Private.h, whyever that ended up in a public header
  is beyond me.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-21 13:49:16 +00:00
Jérôme Duval
1f11178f97 added posix thread specific data functions
added a pthread_detach skeleton


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-20 12:27:46 +00:00
Jérôme Duval
a23efdfa79 added some pthread_* and pthread_attr_* naive functions
I mapped pthread_t to thread_id for simplicity


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-20 11:05:58 +00:00
Jérôme Duval
1ad334ed89 uint => unsigned int
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-06-15 23:39:15 +00:00
François Revol
c2be814ab5 added an Haiku-specific RLIMIT (NumOpenVnodeMONitors) (UNIMPLEMENTED yet) (we might want to renumber it),
and used that one and NOFILE to implement R5 private calls _kset_[fd|mon]_limit_()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-22 19:37:40 +00:00
Axel Dörfler
4ea1753e0a Since we're now using GCC on PPC as well, there is no reason not
to include GCC's header file here.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-19 13:07:53 +00:00
Jérôme Duval
8cea73aade avoids a gcc warning on definition of INT32_MIN
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-17 16:06:06 +00:00
Axel Dörfler
d2a76f7406 The lround() and lroundf() functions are now also found in our math.h header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17400 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-09 18:14:11 +00:00
Jérôme Duval
c3725117bd wctype_t is already defined in wchar.h which is included
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-05-03 13:39:23 +00:00
Jérôme Duval
ad6ada0be5 removed struct _pthread* forward declarations, they're not needed
added some more posix definitions, though they might be never used in Haiku


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-21 09:47:43 +00:00
Jérôme Duval
b7f854b819 now match pthread_private.h declarations
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-20 14:47:58 +00:00
Jérôme Duval
a00ed9fa24 added some missing pthreads definitions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-20 12:58:32 +00:00
Axel Dörfler
b506c53f0a Changed useconds_t and suseconds_t to be "long" types instead of "long long".
This has a negative effect on ualarm(), but is somewhat required by the POSIX
specs ("[...] the implementation should support one or more programming environments
in which [...], and useconds_t are no greater than the width of type long."
Indeed, it also changed the size of our struct timeval which broken binary
compatibility with R5 (ie. used in gettimeofday()).
This fixes bug #490 and therefore bug #428 (firefox crashing on load) as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-16 15:16:50 +00:00
Axel Dörfler
558885f395 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-04-06 07:04:34 +00:00
Axel Dörfler
7ca5966a15 Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16818 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 14:42:47 +00:00
Axel Dörfler
e589b33020 Should fix the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16817 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 14:42:04 +00:00
Jérôme Duval
a34963f388 added posix_gnu_string
added more posix definitions


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-16 11:09:43 +00:00
Jérôme Duval
e0f9a4e815 added some wchar.h definitions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:18:32 +00:00
Jérôme Duval
641526173e fixed cpluscplus guard
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16802 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:17:32 +00:00
Axel Dörfler
579c74ceb5 * Implemented a simple version of the private function mstats() (BeIDE needs it).
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16800 a95241bf-73f2-0310-859d-f6bbb57e9c96
2006-03-14 23:15:57 +00:00
Waldemar Kornewald
ce823541ec Removed #ifdef __cplusplus from networking headers. The check is already done in cdefs.h (__BEGIN_DECLS) which I committed yesterday.
Committed libnetwork.so. I actually wanted to port BSD's libc/net resolver, but that one uses too many unsupported functions, so I basically merged libbind.so and libsocket.so into one library.

Moved the libbind.so sources to libnetwork/dns.

Cleaned up native part of libbind.so a little bit more. Though, the ugly hack remains. We nbetter pthread/mutex support. Added TODO that we also shousctl() into the kernel and libroot.so.

Improved DEVNOTES a little bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-12-20 10:54:58 +00:00
Waldemar Kornewald
8c85eedc66 Moved the needed headers from private to posix folder. This should hopefully fix the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15590 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-12-19 17:42:05 +00:00
Waldemar Kornewald
f7a223fa1b Removed unneeded libbind files (were never compiled, anyway).
Moved some headers around and cleaned them up.

Fixed threading code in libbind.so. Don't know why I hadn't noticed this before. Now it is reliable, but uses an even uglier hack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15585 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-12-19 13:26:54 +00:00
Ingo Weinhold
ff29286ffd Ouch, those should have been gone since the activation of new build
system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15481 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-12-10 23:39:30 +00:00
Ingo Weinhold
fe14a904a8 * Implemented [sig]{set,long}jmp() for PPC. No idea, if it is any good,
but it compiles at least. :-)
* Pulled the architecture specific part out of <posix/setjmp.h> into
  <posix/arch/<arch>/arch_setjmp.h>.
* Moved setjmp_save_sigs.c from the x86 specific implementation into a
  "generic" sibling directory, since it is reusable (and actually used
  by the PPC implementation).
* Added generic/longjmp_return.c containing a function __longjmp_return,
  which is invoked at the end of siglongjmp(), resetting the signal mask
  and validating the return value. It is used by the PPC implementation,
  and should also be used by the x86 implementation, but I'll leave that
  to someone who's motivated enough to also test it. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15479 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-12-10 22:56:52 +00:00
Axel Dörfler
d2f25ec7a5 That work-around for R5 build targets should no longer be necessary.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-13 17:54:18 +00:00
Axel Dörfler
4e766dd482 * header cleanup, but there is still a lot more to do...
* added round(), roundf(), and roundl() implementations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-13 13:22:47 +00:00
Axel Dörfler
6065411b88 ualarm()'s arguments are actually useconds_t, too.
Fixed implementation of ualarm() to support larger values.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-13 13:20:25 +00:00
Axel Dörfler
b22f48cc07 Fixed alarm(), ualarm(), and sleep() return codes - "uint" is not a POSIX type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-13 13:06:08 +00:00
Axel Dörfler
71c6382f33 useconds_t and suseconds_t are now long long ints.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-13 13:05:26 +00:00
Ingo Weinhold
758b1d0e05 Fixes that make Haiku build with gcc 4. Mainly out of the following
categories:
* Missing includes (like <stdlib.h> and <string.h>).
* Linking against $(TARGET_LIBSTDC++) instead of libstdc++.r4.so.
* Local variables shadowing parameters.
* Default parameters in function definitions (as opposed to function
  declarations).
* All C++ stuff (nothrow, map, set, vector, min, max,...) must be imported
  explicitly from the std:: namespace now.
* "new (sometype)[...]" must read "new sometype[...]", even if sometype is
  something like "const char *".
* __FUNCTION__ is no longer a string literal (but a string expression), i.e.
  'printf(__FUNCTION__ ": ...\n")' is invalid code.
* A type cast results in a non-lvalue. E.g. "(char *)buffer += bytes"
  is an invalid expression.
* "friend class SomeClass" only works when SomeClass is known before.
  Otherwise the an inner class with that name is considered as friend.
  gcc 4 is much pickier about scopes.
* gcc 4 is generally stricter with respect to type conversions in C.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-12 23:27:14 +00:00
Ingo Weinhold
88ccb61ad5 Removed GCC headers float.h and varargs.h. Fixed limits.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-09 18:01:16 +00:00
Axel Dörfler
6efb3f085f Added statvfs.h header and implemented statvfs() and fstatvfs() - both untested, though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-07 13:47:55 +00:00
Jérôme Duval
d05775b3bd added seteuid and setegid
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 16:38:40 +00:00
Jérôme Duval
0680eec72c added two missing functions : seekdir and telldir
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-04 16:13:13 +00:00
Jérôme Duval
2726040fcb we can live without you, sysmacros.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-11-02 15:27:00 +00:00
Axel Dörfler
0e1358bd5c Applied a patch from Alexander Deynichenko: added missing signal definitions.
That also includes some XSI signals, SIGPOLL and SIGVTALRM, dunno if we will every support
those in a useful way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-31 12:39:29 +00:00
Axel Dörfler
4d9b4412bd Added memccpy() - not there in BeOS, but part of the POSIX specs.
Contributed by Alexander Deynichenko.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-31 12:18:55 +00:00
Ingo Weinhold
338b8dc301 Merged changes from branch build_system_redesign at revision 14573.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-29 16:27:43 +00:00
Jérôme Duval
9744e7bb63 added a sys/sysmacros.h header (as on R5)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-28 11:43:56 +00:00
Jérôme Duval
a6786b1d3a remove unused header
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-28 11:42:00 +00:00
Jérôme Duval
42848b0907 added index and rindex to libroot.so
R5 ftp and telnet commands now run on Haiku


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-10-12 13:05:03 +00:00
Jérôme Duval
64f6fcfb1d added a socketpair prototype (part of bug #52)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-20 14:10:42 +00:00
Jérôme Duval
e5ee1dad6a added sigaddset, sigismember, sigdelset to libroot.so from inline versions in signal.h
moved static inline to extern inline to allow this change
please someone review this (ie are they platform dependent functions ?)
should fix bug #47


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-09-02 11:53:43 +00:00
Axel Dörfler
c1fc0493cb Added missing wctype.h header - R5 does not include this header, but its
libroot.so exports the functions declared therein.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-18 15:02:09 +00:00
Axel Dörfler
29b949de52 GCC 3 conforms to ISO-C-99 so _Bool is a built-in type; we should not try to redefine it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12372 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 16:51:55 +00:00
Axel Dörfler
92ec9b2fbc Added our old "new" header again, as I can't build anything without it under Linux (PPC and x86).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-04-13 16:50:25 +00:00
Axel Dörfler
61ad5bc2e7 Fixed various problems with the latest stdbool.h changes, including stdbool.h itself:
- SupportDefs.h only includes stdbool.h if included from C
- stdbool.h for C++ now includes a macro for "bool" as defined by that header
- stdbool.h does nothing if __bool_true_false_are_defined is already defined
- stdbool.h no longer defines a _Bool enum, but defines _Bool as unsigned char, as
  previously done by SupportDefs.h (the previous version changed the size).
- The gensyscalls Jamfile now preprocesses its headers in C++ mode so that "bool"
  stays "bool", and doesn't become _Bool.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 18:01:40 +00:00
Axel Dörfler
e5fd0bde4a tcsetpgrp() and tcgetpgrp() are actually defined in unistd.h, not termios.h.
Implemented them and moved them to unistd/terminal.c - not yet tested, though,
but should work. As a side effect, the TTY should now send signals.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12034 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-26 14:41:30 +00:00
Jérôme Duval
aab32edf08 updated stdbool.h
SupportDefs.h now includes stdbool.h
This can break in some cases


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@11985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-25 17:08:27 +00:00
Ingo Weinhold
5141596a69 Added ffs().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11614 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-07 22:02:50 +00:00
Ingo Weinhold
078898ebf8 Not longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11603 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-06 15:58:35 +00:00
Jérôme Duval
c4b73bfcd5 added setpgrp
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-04 13:55:43 +00:00
Jérôme Duval
89104b34c4 Change the license (no no Axel doesn't change his name :))
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-03 10:25:24 +00:00
Jérôme Duval
613757e677 added a proto for strptime
replaced copyright header with author


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-03-02 16:39:50 +00:00
Jérôme Duval
abd010bc61 Moved mbstate to wchar.h
Restored glibc/wcsmbs/wchar.h


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11451 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-22 18:06:35 +00:00
Jérôme Duval
e16287b33e added setbuf, setvbuf, setbuffer and setlinebuf prototypes
implemented by libio


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-29 13:06:04 +00:00
Axel Dörfler
4edff48607 We still have to be binary compatible when we build for Haiku.
Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 21:23:29 +00:00
Jérôme Duval
7e1e4b7fc5 added R5 compatibility
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11037 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-25 19:15:19 +00:00
Jérôme Duval
c6d555add9 added _tolower and _toupper
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10369 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-07 17:24:16 +00:00
Nathan Whitehorn
ec1cf916a3 Fixed a link problem - uname() should be extern C when used in C++ code.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-17 01:26:11 +00:00
Jérôme Duval
89c4e72ae5 added utsname.h for uname, based on posix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9952 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-15 16:55:33 +00:00
Oliver Tappe
ce78b28632 - removed ctermid() and cuserid(), which live in stdio.h
- removed system(), which lives in stdlib.h


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-10 20:26:19 +00:00
Oliver Tappe
2f50925911 - the standard says that cuserid() should be declared instead of unistd.h,
and libstdc++-build agrees (fails otherwise).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-10 20:25:12 +00:00
Axel Dörfler
1fd17e4f24 We don't support the BeOS mount API.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-08 18:34:43 +00:00
Axel Dörfler
283c934877 Cleaned up the header a bit, added macro for bcmp().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-03 14:45:47 +00:00
Axel Dörfler
764201fdae Added a workaround for buggy BeOS (all versions) - if you need the setjmp.h
header, you should define COMPILE_FOR_R5 when you want to run the software
under R5 in order not to crash.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-25 23:29:24 +00:00
Axel Dörfler
9348d6b4e7 Added missing process prototypes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 14:28:28 +00:00
Axel Dörfler
45b820dd77 Made header C++ safe, added prototype for pthread_atfork().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-12 16:25:07 +00:00
Axel Dörfler
b5c6c8b6b5 We now have a POSIX compatible setjmp.h header (also BeOS binary compatible).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-05 13:06:36 +00:00
Axel Dörfler
fafe5b8bdb Added two ioctl() values to set and get the TTY's process group ID.
Copied the old and ugly naming style, though...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-29 10:24:46 +00:00
Waldemar Kornewald
861d934e82 This should fix BONE compatibility a little bit. We still need nonblocking IO and a good select() fix.
Explanation: we did not have the same sockaddr_in struct size as BONE, but our netstack wants to have our size, so I changed it to match BONE's. ;)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9079 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-27 22:31:54 +00:00
Axel Dörfler
4c3d76fd9b Minor cleanups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-24 00:21:53 +00:00
Axel Dörfler
b67cd64e96 Almost rewrote the termios.h header file.
It's now much cleaner than before. Removed the tcgetattr() macro; it's now
a real function call again.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-23 23:46:24 +00:00
Axel Dörfler
130b146f78 Added comments to definitions.
Added preliminary O_TEMPORARY flag.
Made it a bit more POSIX compliant.
Cleaned up header.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-21 22:45:08 +00:00
Axel Dörfler
d8b0b6fe51 Added readdir_r() function prototype. Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-14 23:08:21 +00:00
Axel Dörfler
5e2d8bb9f7 Added a BeOS compatible header for the GNU getopt() extensions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-14 20:56:37 +00:00
Axel Dörfler
c654468395 Cleaned up the stdint.h header.
Separated macros from the typedefs, removed macros for unsigned minima as
these are not part of the standard.
Added intptr_t/uintptr_t types. Added some comments what those types stand for.
Added a note that this header is mostly compiler/arch specific and should
be handled (adapted) like this.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-11 18:31:36 +00:00
Axel Dörfler
1c448f3551 Removed all inline functions.
Also no longer let getc()/putc() point to libio functions directly (they
were even only macros there, too...).
Should now be backwards compatible, too. Thanks to Waldemar for pointing this out!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-08 16:22:28 +00:00
Waldemar Kornewald
496d0bc32f Moved uio struct to core_private.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-08 08:45:32 +00:00
Waldemar Kornewald
15288c9013 Fixed the build of our netstack.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-05 10:59:00 +00:00
Axel Dörfler
77a6c2446a We now have a POSIX and BeOS compatible grp.h header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-02 01:04:55 +00:00
Axel Dörfler
ef552d5eab Added names for the parameters.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-02 01:03:51 +00:00
Axel Dörfler
336ffbcd04 Unlike alarm(), ualarm() has actually two arguments.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-01 23:45:54 +00:00
Axel Dörfler
cc90b1798a Removed unsupported cruft from uio.h (uiomove()).
Made header C++ safe.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-01 16:26:15 +00:00
Philippe Houdoin
15b8f34b6f These size_t arguments should be, well, according to POSIX, socklen_t,
but Be declared them as int. So do I.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-14 00:22:33 +00:00
Axel Dörfler
c3d35103c7 Added siginfo_t structure as required by ISO-C 99 - it's not yet used, though.
Smaller style cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8344 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-07 12:48:27 +00:00
Axel Dörfler
288ff1988f Added new BeOS compatible wait.h header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8343 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-07 12:47:00 +00:00
Axel Dörfler
95216cc886 Added id_t as required by POSIX/ISO-C 99.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-07 12:46:08 +00:00
Axel Dörfler
13fde991bd Added BeOS compatible ctype.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8331 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-06 00:29:52 +00:00
Axel Dörfler
8294b54830 Minor style change.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-05 23:20:43 +00:00
Axel Dörfler
b3f4b2ea49 Added a BeOS compatible assert.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8240 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-30 02:34:10 +00:00
Axel Dörfler
da4a7ba49b wchar_t is already defined in C++ with GCC 3 - this fixes the build for that compiler.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-23 15:17:06 +00:00
Philippe Houdoin
fe09bb12a1 Remove non-POSIX sys/cdefs.h & co dependency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-13 00:56:00 +00:00
Philippe Houdoin
399761740c Remove non-POSIX sys/cdefs.h dependency.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-13 00:48:55 +00:00
Philippe Houdoin
38c2785626 Missing header file, required to build src/apps/bin/grep-2.5 and it's, indeed,
required by POSIX 1003.1g.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-12 22:47:31 +00:00
Axel Dörfler
071c01b136 This should fix the R5 build again.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-10 23:00:42 +00:00
Axel Dörfler
94e11a83bb Fixes POSIX and R5 compatibility of the stat structure; readded field st_rdev.
Added an additional field st_type and changed functions to allow for this
extension while maintaining R5 compatibility.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7495 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-10 14:35:11 +00:00
Axel Dörfler
c757aac399 Added BeBuild.h in a central header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7416 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-05 16:21:44 +00:00
Axel Dörfler
10d0c89786 Added a new and BeOS compatible public stdio.h header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-03 12:20:52 +00:00
Axel Dörfler
1062a34eae Added separate libio header (since some C++ headers are needing it) - still messy.
Cleaned up stdio_{pre|post}.h headers.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7363 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-03 09:29:27 +00:00
Philippe Houdoin
a1269ea0d9 Moved to /private/net. Not POSIX-standard headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-25 23:06:36 +00:00
Philippe Houdoin
3fb2d6f43a Moved to headers/private/net, as they're not standard POSIX headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-25 23:03:19 +00:00
Waldemar Kornewald
e09429df45 Removed unneeded constants.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-18 13:12:15 +00:00
Waldemar Kornewald
f1730f62f5 Fixed collision between SO_XXX and IP_XXX defines.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-18 12:46:10 +00:00
Waldemar Kornewald
fde2fe1c1c Checking in headers for libbind.so.
Also updated our socket.h to be more compatible with BONE (we do not support SO_NONBLOCK which is needed for Mozilla).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-15 15:54:34 +00:00
Waldemar Kornewald
be9443cb6e Changed address families to match bone.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-08 13:00:45 +00:00
Waldemar Kornewald
4283dfd6f6 Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-30 10:51:50 +00:00
Axel Dörfler
435464b451 Added addr_t to sys/types.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-22 19:22:09 +00:00
Axel Dörfler
190c52aac5 A BeOS compatible math.h rewritten from scratch.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6963 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-13 18:49:41 +00:00
Axel Dörfler
5c23f57060 I am not sure why I did those, but I guess it has something to do with doxygen.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6684 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-23 03:52:08 +00:00
Philippe Houdoin
f8d0ea9641 Fix the h_errno issue of this thread-safe global variable, thanks to Thread Local Storage.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6470 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-02 23:34:21 +00:00
Philippe Houdoin
74a1787535 Remove ether_driver.h API from the should-be-POSIX-only if.h.
Still some sem_id depedency, thought. Will be split into private and posix files soon.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-12 23:55:04 +00:00
shatty
0cb1c46a46 add header protection, and two posix compliant prototypes that are provided by R5 libroot.so
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-30 07:37:08 +00:00
Philippe Houdoin
9af57a10a9 Now private sys/socketvar.h header is no more included.
Non-clean hack: include os-specific OS.h to get sem_id and thread_id types defined.
Should clean up this whole file one day, thought.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-01 13:15:03 +00:00
Axel Dörfler
f0e6952fc8 Added comments to LOG_SERIAL and LOG_PERROR.
Note, LOG_SERIAL does neither work in our implementation, nor in the original
implementation by Be.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-13 03:30:21 +00:00
Axel Dörfler
fa2f787a47 Added some comments and fixed LOG_AUTHPRIV.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5333 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-12 16:33:11 +00:00
Axel Dörfler
94849cc617 Our new syslog.h. Note, this one might break source compatibility, as I
don't define some (unneeded) macros, and LOG_TMID & LOG_THID are gone
(they were specified to be the same as LOG_PID).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-12 14:40:45 +00:00
Axel Dörfler
40df5bb2e8 flock() is neither POSIX, nor available in BeOS.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-06 00:15:54 +00:00
Axel Dörfler
f175a63eaa Added prototype for strerror_r().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-05 23:52:25 +00:00
Waldemar Kornewald
8c911f6ce6 h_errno is now declared in each file that uses it.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-17 13:57:33 +00:00
Waldemar Kornewald
0fe962a8b1 Last modification was wrong. The declaration of h_errno was needed to compile libnet.so.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-16 18:45:59 +00:00
Waldemar Kornewald
917d6a9d1f Removed declaration of h_errno variable.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5023 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-14 10:12:04 +00:00
Axel Dörfler
1470102500 change variable name to better fit its purpose.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 15:53:54 +00:00
Axel Dörfler
051f882824 Rewrote the resource.h header and added comments about missing functions
and functionality.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-21 15:51:03 +00:00
shatty
2da2ccee09 new posix compliant and public resource.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-20 20:41:11 +00:00
Waldemar Kornewald
345d3d7d0b Fixed a spelling error.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 16:05:23 +00:00
shatty
b394ba7f2a new posix/beos compatible version in public posix/ctype.h, also added isblank prototype
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-16 07:13:55 +00:00
shatty
77c4490299 for compatibility with beos r5 and gcc configuration, uncomment strsignal
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-15 09:03:54 +00:00
Philippe Houdoin
549b25ed0a Remove non-posix headers files, moved back to headers/private/net where they belong for
the moment.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-11 22:48:36 +00:00
shadow303
17e6de7a37 gcc 3 fixes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-04 00:46:53 +00:00
shatty
5506f765ae removed #include <OS.h>
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 08:52:30 +00:00
shatty
3a79ea54e8 more posix compatibility in stdint.h prevents build problems in jpeg2000translator
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 08:00:01 +00:00
shatty
220ac08aa6 gnu free rewrite of stddef.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 07:47:24 +00:00
shatty
71f8d587d2 removed unnecessary #include <OS.h>
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 07:34:06 +00:00
shatty
48103d3411 changed to use stdint and intX_t types
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 06:24:37 +00:00
shatty
4a53d0ba81 reduce dependence on ByteOrder.h by removing B_HOST_IS_BENDIAN and using BYTE_ORDER instead
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 06:03:20 +00:00
shatty
b5dc136f9a remove OS.h since it is already included through socketvar.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 06:02:20 +00:00
shatty
e704a20367 posix files get posix types
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 05:12:35 +00:00
shatty
7626aaf1a5 fixed unsetenv prototype to match posix standard
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 04:55:14 +00:00
shatty
99a35090bd added least and fast types
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 04:54:11 +00:00
shatty
6318b9ea17 posix standard stdbool.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-02 04:53:24 +00:00
shatty
3b1dc84a90 must include size_t for iconv
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-31 00:57:04 +00:00
Michael Pfeiffer
c47667231a extern "C" wrapper needed for inclusion from C++
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-06 10:30:56 +00:00
Philippe Houdoin
58a5c4bb6e Rollback to original xBSD DNS resolver implementation _res global variable name.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-19 00:10:13 +00:00
Niels Sascha Reedijk
3ffe393cd6 Fix an issue where the _res symbol is undeclared due to another symbol with
the same name somewhere else( I think). At least it works now.:


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-18 19:01:09 +00:00
Axel Dörfler
0f3a75138a Our endian.h header was still missing. Defines constants to determine the
platform's endian.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-17 15:26:18 +00:00
Axel Dörfler
1df8b22cb1 I don't know yet *why*, but the build fails when this header is guarded
against reinclusion - possibly because GCC's stdarg.h act differently
when certain symbols are defined.
Anyway, that fixes the issue for now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 16:14:12 +00:00
Axel Dörfler
035aa55650 Our stdarg.h header will now directly include the provided GCC header (and
don't do anything else anymore).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-11 02:58:23 +00:00
Axel Dörfler
6eb83f74ed Added prototype for the GNU strchrnul() call.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-03 16:06:48 +00:00
Axel Dörfler
f924ff50f5 Added the public pthread header - right now, only support for mutex and
mutexattr is there, and the header reflects this.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-04-20 18:53:11 +00:00
Axel Dörfler
f8fdd89ffb Some header work to make it more posix compliant.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-04-19 17:35:55 +00:00
Axel Dörfler
e20d245cfd Added some common limits (ULLONG_MAX, LLONG_MIN/MAX, OFF_MIN/MAX).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-14 17:34:59 +00:00
Stefano Ceccherini
843571810d Removed dependancies from be_setup.h (since we don't have this header in our repository)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-14 07:56:22 +00:00
Axel Dörfler
79d76063c3 Added stdio post/pre includes for our BeOS compatible stdio implementation.
stdio.h will follow later (the headers are currently unused).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-11 19:37:58 +00:00
Philippe Houdoin
e803870545 Forgot to commit these... Should fix network stuff build issues.
Add again the load_driver_symbols() export into our KernelExport.h, as it's expected
by many kernel add-ons (drivers, modules)... the network ones, for a start.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-09 21:05:37 +00:00
Stefano Ceccherini
3e194a0eeb Added termios.h header
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-22 16:48:04 +00:00
Axel Dörfler
909f4951dd Added our dlfcn.h header - the RTLD_xxx constants may change, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2418 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-01-12 16:15:49 +00:00
Axel Dörfler
717eabde1f Added comments to the fields of the dirent structure. Most important one
is d_reclen which points out that this field is not the name length but
the one of the whole record (this is also handled incorrectly by the kernel
file systems right now).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-29 02:49:58 +00:00
Daniel Reinhold
14bc22fb88 some cleanup and reorganization:
- the inline functions I introduced earlier have been removed
- the notes about non-Posix extensions to the sigaction struct have been
  updated, enlarged, and moved out of the way (near the bottom of the file)
- all the function prototypes have been collected and placed together
- a few more items have been commented
- in general, the organization of the whole file should be more tidy now (I hope)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-18 07:24:07 +00:00
Daniel Reinhold
c69a62db20 several fixups:
a new typedef for signal handlers - sig_func_t
(the old one is kept around for backwards compatibility)

a new macro MAX_SIGNO to get rid of magic 32's all about

two more functions (sigemptyset and sigfillset) are now
defined inline as well


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-17 04:43:13 +00:00
Axel Dörfler
2935bff656 Added utime.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-15 22:34:27 +00:00
Ingo Weinhold
8a425955c5 The header is now compatible with R5's libroot.so.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-15 17:37:55 +00:00
Philippe Houdoin
f0ad00a244 Remove once again a global variable (protocols list) declaration from a header!
Plus remove unrequired _KERNEL_MODE code switch.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-13 23:40:03 +00:00
Axel Dörfler
350117ec51 Removed the "const" in the return value of strerror() to be POSIX compliant.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-01 02:58:34 +00:00
Philippe Houdoin
7d31ea94fb Add missing extern "C" enclosures.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1808 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-01 02:54:42 +00:00
Philippe Houdoin
5c3421e490 rtstat and rt_tables global variables were declared EACH time route.h was included.
There're now only defined here via extern, and declared in
/current/src/add-ons/kernel/network/core/route.c where they belong.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1807 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-11-01 02:53:49 +00:00
beveloper
2f344cad19 some more clean up and renaming
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1794 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-30 20:59:25 +00:00
Axel Dörfler
2dc3fee59d Nicer parameter names in sys/select.h.
Added a comment in sys/time.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-30 02:28:09 +00:00
beveloper
42415555d3 after many changes, the network stack can now be build
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-30 01:21:54 +00:00
beveloper
c16715cb44 removed
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-29 20:15:21 +00:00
beveloper
890892471a moved some things into private/net_socket.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-29 20:11:48 +00:00
beveloper
8b7eabec3f moved
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-29 20:05:41 +00:00
Axel Dörfler
b9db114e51 The pollfd fields events & revents had the wrong size (int instead of short).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-29 05:39:54 +00:00
Axel Dörfler
b026d723ba Made the POLLxxx constants compatible with the ones used internally in
the VFS - BeOS don't have poll() at all, so we can freely choose them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-29 03:36:14 +00:00
Axel Dörfler
03360f3bb7 Added our versions of BeOS compatible sys/timeb.h, and sys/times.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-29 00:46:31 +00:00
Axel Dörfler
f93086c8b2 Completed the poll.h header file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-28 18:46:30 +00:00
Axel Dörfler
f647a9d57c Added struct timespec, and struct itimerspec to time.h.
Added missing typedefs (suseconds_t, useconds_t).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-28 18:36:26 +00:00
Axel Dörfler
d068515fcb Completed sys/select.h, renamed the howmany() macro to _howmany() - now
also contains the pselect() prototype.
Added new header file sys/time.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-28 18:34:45 +00:00
Axel Dörfler
493130b326 Fixed and cleaned up select.h.
Exports now the prototype correctly in C++.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-28 17:49:41 +00:00
Daniel Reinhold
79362df9f7 added macros PI and PI2, and fixed previous (invalid) references to these
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-27 01:36:45 +00:00
Daniel Reinhold
55f572b311 moved math.h from headers/private/kernel to headers/posix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 20:49:33 +00:00
lillo
343b352fe1 Signals, 2nd pass: syscall restarting now only works on EINTR (removed other exotic retcodes like ERESTARTSYS); signal handlers now receive 3 args, and the vregs struct is used to save the signal context, making the system beos compatible.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 13:31:22 +00:00
beveloper
702a9e2e58 added C++ header guards
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 13:22:40 +00:00
beveloper
23f9ab0a7d fixed the extern "C" header guards, it must read __cplusplus, not _cplusplus.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 13:07:30 +00:00
Axel Dörfler
a3b20c0fa9 Added a locale.h header file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 00:35:43 +00:00
Axel Dörfler
0f1aeae76c Added inttypes.h (includes stuff like int8_t typedef), but it's not complete;
the strtoimax() functions and friends are missing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 00:35:08 +00:00
Axel Dörfler
88222a7539 "template" is obviously a reserved word in C++...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-26 00:06:00 +00:00
Axel Dörfler
617c98ba68 Made stdlib.h almost compatible to BeOS.
Removed deprecated strtoq() functions (they are not even part of BeOS, so
why should we include this cruft?).
Added prototypes for llabs(), and lldiv() - added lldiv_t to div_t.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-25 22:02:50 +00:00
beveloper
15750026e0 added C++ header guards
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1655 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-25 15:13:00 +00:00
beveloper
37514a9358 added <netinet/in.h> include and C++ header guards
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-25 15:12:41 +00:00
beveloper
8fcf577e24 Fixed a strange, and hard to find bug.
extern "C" {
was not terminated.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1653 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-25 14:43:27 +00:00
Daniel Reinhold
2917ddc323 replaced stdlib.h in 'headers/private/kernel' with a better one in the more standard location 'headers/posix'
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1649 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-25 11:50:13 +00:00
Daniel Reinhold
8c75beefbf initial checkin
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-24 19:52:59 +00:00
beveloper
49a11cb44b Temporary files to allow compiling. Some should be replaced, some removed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 20:44:36 +00:00
beveloper
32325cf365 Temporary files to allow compiling. Some should be replaced, some removed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 20:35:37 +00:00
beveloper
9fc7164698 allow building everything without local(tree external) header files beeing
used for kernel or kit components


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1630 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 20:13:17 +00:00
beveloper
55f14ba4d9 another small file for compatibility reasons
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 19:35:15 +00:00
beveloper
e48a877c93 a few new headers for compatibility
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1625 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 18:47:12 +00:00
lillo
f510e6ce60 posix signals support, 1st pass
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1623 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 17:31:10 +00:00
beveloper
54d6a27c67 a new and native sys/types.h header for OpenBeOS
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 16:24:50 +00:00
Axel Dörfler
5e4caf1e35 included missing header.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1621 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 16:06:53 +00:00
Axel Dörfler
56d2067885 Added a simple malloc.h - doesn't contain all the rare BeOS stuff, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 15:51:19 +00:00
Axel Dörfler
2b9d5ff6c2 Some changes for an independent header system - added missing function
prototypes (and those commented out), to keep the whole project be compilable
and usable on BeOS.
Fixed a bug in fcntl.h (definition for O_DIRECT), added new O_MOUNT.
Added prototypes and "struct tm" to time.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1619 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-23 15:27:44 +00:00
Axel Dörfler
cc53922b41 Added headers for fnmatch, glob, and pwd stuff.
Uncomment some functions in unistd.h which glob is using.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-10-06 23:47:13 +00:00
Axel Dörfler
10567eeb6e Changed an unused field of struct stat (st_rdev) to st_type, so that we
can use this structure to call fstat() on attributes and indices.
Added more functions to the file system interface (attributes, and indices).
Added header fs_attr.h, and fs_index.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-24 16:02:53 +00:00
Axel Dörfler
8edc4bb4c8 Added a very preliminary time.h
Removed the bzero()/bcopy() prototypes, and replaced them with macros - we
should decide what to do with them.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-23 02:33:02 +00:00
Axel Dörfler
0c9ee87018 Added our string.h headers (the one in private/kernel will be removed now)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-17 14:51:59 +00:00
beveloper
0b5170a447 modified to support building of libnet
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-03 00:02:40 +00:00
Philippe Houdoin
d3dadb6b54 Forgot to move select.h and sockio.h from old /net_kit tree
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@915 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-28 19:53:43 +00:00
Philippe Houdoin
8602784fd5 These includes files are in /current/headers/private/net/. now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-27 08:02:28 +00:00
Axel Dörfler
eb11b67370 Added a preliminary sys/types.h that just includes ktypes.h for now.
Changed other headers to include sys/types.h rather than ktypes.h.
Added a license reference at the beginning of those files.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-20 11:10:51 +00:00
Axel Dörfler
83a74a6b48 Added param.h to the repository.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-20 10:35:02 +00:00
Axel Dörfler
4c405cbdd4 The fs interface functions should now return a "status_t" rather than an "int".
Added syscalls for, and implemented sys_create_link(), sys_remove_dir().
Implemented link(), unlink(), rmdir().
Fixed the inconsistent path buffer handling in the user|sys vfs functions; the
path buffer is now exactly SYS_MAX_PATH_LEN from userland (incl. terminating
null byte).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-13 20:39:25 +00:00
Axel Dörfler
854fc92a7c Implemented some more calls in unistd.h.
Replaced the unused syscall for getdtablesize() with one for access().
Implemented sys_access() and added it to the file system interface.
Removed the fs function interface from vfs.h.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-13 13:51:36 +00:00
Axel Dörfler
e867ec51af Added mount.c, implementation of mount() and unmount().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 20:48:30 +00:00
Axel Dörfler
beddff0f56 Replaced opendir.c with directory.c, implemented chdir(), fchdir(), and
getcwd().
Introduced new xyz(int fd, char *path, ...) style of functions for
sys_setcwd(), and sys_write_stat().
Added missing sys_fstat(). Removed duplicated prototypes in syscalls.h
Fixed some minor bugs.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 20:20:28 +00:00
Axel Dörfler
14e18e556e getdtablesize() no longer needs a syscall.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 17:51:02 +00:00
Axel Dörfler
75cf4c1ea5 New BeOS-like unistd.h file.
All unimplemented functions are commented out for now - but that has to
change, of course.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 16:58:39 +00:00
Axel Dörfler
2311f9f79f Added a BeOS like fcntl.h, with some additions (which might be implemented
some day).
Cleaned up sys/stat.h a bit, and added new definitions for different types
of symlinks I plan to add - though I am still not sure if it's a good idea ;-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-05 01:26:14 +00:00
Axel Dörfler
ae372703ce Big commit: Added symlink support to the kernel.
- added needed syscalls to access symlink support from userland
- implemented lstat(), symlink(), and readlink()
- added dev_t to ktypes.h (for now - should be in a public header anyway)
- added symlink support to the "ls" command (now calls lstat() and shows the
  link target with the -l option)
- changed the sys_read_stat() call to support symlinks, and updated files
  using that function (it gets an extra argument: bool traverseLink)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-03 02:03:27 +00:00
David Reid
afe886fc48 Obey the gods of source compatability. Progress is evil. (apparently)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 14:57:37 +00:00
David Reid
6bbdd797fa Remove the ppp headers until we actually have something that works.
Bring the rest of the files up to date.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:37:43 +00:00
David Reid
4fc6751684 Bring these files up to date.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:36:23 +00:00
David Reid
ed7e0da5b5 We no longer support this.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:35:00 +00:00
David Reid
983e147905 Remove this file that has moved to private/net.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:34:21 +00:00
David Reid
7fbbc98590 Select probably will end up being defined elsewhere, and we don't yet
support it anyway, so remove this file as it's no longer needed.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:33:07 +00:00
David Reid
f9e588eeb1 The ioctl defines are just in socket.h now, so no need for a seperate file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:32:15 +00:00
David Reid
4f113a4615 This is now just uio.h and is provided by the system, so no need to
have a different version for the network.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:31:24 +00:00
David Reid
8fd4cae92e These are posix files so should be under posix/sys - which is now where they
are :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:29:46 +00:00
David Reid
bd3bb49923 Bring this up to date.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:27:23 +00:00
David Reid
1f058e396c Small update to bring this up to date.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:19:40 +00:00
David Reid
4b111a88c1 Add this in the correct place.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 09:14:15 +00:00
David Reid
f16873a60e OK, final change to error codes for a while I hope.
- remove private/kernel/Errors.h as this was just plain wrong to have it
  there and confused issues somewhat.
- add the kerrors.h file that has kernel only error codes, namely the
  ERR_ codes from newos.
- add comments for the other header files to tell people where to find
  error code definitions in an attempt to stop people getting lost!


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-11 22:17:09 +00:00
David Reid
d69c1d7983 Move errno.h to it's correct place
Adjust Errors.h to use errno.h for the posix error codes
add first stab at limits.h, albeit not using the gcc headers at
present for intel.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@88 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-11 20:39:30 +00:00
David Reid
09cdca467d This is where it belongs!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@83 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-11 14:59:59 +00:00
David Reid
f41c281f54 This is the correct place for this file.
Improved the comments and doxygen style to try and make the file
more readable.

The previous version can't be removed until we have the posix paths included
in the include paths. Once this is done the existsing version should be
removed as this is more up to date.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@67 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-10 23:23:15 +00:00
David Reid
85c2f107d7 Remove files that we either no longer need or are located elsewhere.
These were all private files and so shouldn't have been in a public header
location anyway.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@66 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-10 22:50:24 +00:00
ejakowatz
52a3801208 It is accomplished ...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-09 12:24:59 +00:00