Changeset 1984 for trunk/src/emx/include/InnoTekLIBC/sharedpm.h
- Timestamp:
- May 8, 2005, 2:11:22 PM (20 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/emx/include/InnoTekLIBC/sharedpm.h
-
Property cvs2svn:cvs-rev
changed from
1.21
to1.22
r1983 r1984 4 4 * LIBC Shared Process Management. 5 5 * 6 * 6 * Copyright (c) 2004-2005 knut st. osmundsen <bird@anduin.net> 7 * Copyright (c) 2004 nickk 7 8 * 8 9 * This file is part of InnoTek LIBC. … … 30 31 #include <sys/types.h> 31 32 #include <sys/signal.h> 33 #include <sys/ipc.h> 32 34 33 35 … … 553 555 unsigned long hevNotify; 554 556 555 /* 116 - The rest of the block, up to cbProcess, is undefined in this version. 557 /** 116 - Pointer to SysV Sempahore globals. */ 558 struct __libc_SysV_Sem *pSysVSem; 559 560 /* 120 - The rest of the block, up to cbProcess, is undefined in this version. 556 561 * Future versions of LIBC may use this area assuming it's initalized with zeros. 557 562 */ … … 729 734 730 735 /** 736 * Checks if the calling process is a member of the specified group. 737 * 738 * @returns 0 if member. 739 * @returns -EPERM if not member. 740 * @param gid The group id in question. 741 */ 742 int __libc_spmIsGroupMember(gid_t gid); 743 744 /** 745 * Check if the caller can access the SysV IPC object as requested. 746 * 747 * @returns 0 if we can. 748 * @returns -EPERM if we cannot. 749 * @param pPerm The IPC permission structure. 750 * @param Mode The access request. IPC_M, IPC_W or IPC_R. 751 */ 752 int __libc_spmCanIPC(struct ipc_perm *pPerm, mode_t Mode); 753 754 /** 731 755 * Marks the current process (if we have it around) as zombie 732 756 * or dead freeing all resources associated with it. … … 841 865 * 842 866 * @returns 0 on success. 843 * @returns -1 and errno on failure. 867 * @returns Negative error code (errno.h) on failure. 868 * 844 869 * @param pRegRec Pointer to the exception handler registration record. 870 * @param ppSPMHdr Where to store the pointer to the SPM header. Can be NULL. 871 * 845 872 * @remark Don't even think of calling this if you're not LIBC! 846 873 */ 847 int __libc_spmLock(__LIBC_PSPMXCPTREGREC pRegRec );874 int __libc_spmLock(__LIBC_PSPMXCPTREGREC pRegRec, __LIBC_PSPMHEADER *ppSPMHdr); 848 875 849 876 /** … … 851 878 * 852 879 * @returns 0 on success. 853 * @returns -1 on and errno failure. 880 * @returns Negative error code (errno.h) on failure. 881 * 854 882 * @param pRegRec Pointer to the exception handler registration record. 883 * 855 884 * @remark Don't even think of calling this if you're not LIBC! 856 885 */ … … 859 888 /** 860 889 * Allocate memory from the LIBC shared memory. 890 * 891 * The SPM must be locked using __libc_spmLock() prior to calling this function! 861 892 * 862 893 * @returns Pointer to allocated memory on success. 863 894 * @returns NULL on failure. 895 * 864 896 * @param cbSize Size of memory to allocate. 897 * 865 898 * @remark Don't think of calling this if you're not LIBC! 866 899 */ 867 void * __libc_spmAlloc(size_t cbSize); 868 869 /** 870 * Free memory allocated by __libc_SpmAlloc(). 900 void * __libc_spmAllocLocked(size_t cbSize); 901 902 /** 903 * Free memory allocated by __libc_spmAllocLocked() or __libc_spmAlloc(). 904 * 905 * The SPM must be locked using __libc_spmLock() prior to calling this function! 871 906 * 872 907 * @returns 0 on success. 873 908 * @returns -1 and errno on failure. 909 * 874 910 * @param pv Pointer to memory block returned by __libc_SpmAlloc(). 875 911 * NULL is allowed. 876 912 * @remark Don't think of calling this if you're not LIBC! 877 913 */ 914 int __libc_spmFreeLocked(void *pv); 915 916 /** 917 * Allocate memory from the LIBC shared memory. 918 * 919 * @returns Pointer to allocated memory on success. 920 * @returns NULL on failure. 921 * 922 * @param cbSize Size of memory to allocate. 923 * 924 * @remark Don't think of calling this if you're not LIBC! 925 */ 926 void * __libc_spmAlloc(size_t cbSize); 927 928 /** 929 * Free memory allocated by __libc_SpmAlloc(). 930 * 931 * @returns 0 on success. 932 * @returns -1 and errno on failure. 933 * 934 * @param pv Pointer to memory block returned by __libc_SpmAlloc(). 935 * NULL is allowed. 936 * 937 * @remark Don't think of calling this if you're not LIBC! 938 */ 878 939 int __libc_spmFree(void *pv); 879 940 880 881 /** 882 * Register TCPIP termination handler. 941 /** 942 * Register termination handler. 883 943 * 884 944 * This is a manual way of by passing a.out's broken weak symbols. 885 * @param pfnTerm Pointer to the termination function. 886 */ 887 void __libc_spmSocketRegTerm(void (*pfnTerm)(void)); 945 */ 946 void __libc_spmRegTerm(void (*pfnTerm)(void)); 888 947 889 948 -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.