Annotation of Gnu-Mach/ipc/ipc_hash.h, revision 1.1.1.3

1.1.1.2   root        1: /*
1.1       root        2:  * Mach Operating System
                      3:  * Copyright (c) 1991,1990,1989 Carnegie Mellon University
                      4:  * All Rights Reserved.
1.1.1.2   root        5:  *
1.1       root        6:  * Permission to use, copy, modify and distribute this software and its
                      7:  * documentation is hereby granted, provided that both the copyright
                      8:  * notice and this permission notice appear in all copies of the
                      9:  * software, derivative works or modified versions, and any portions
                     10:  * thereof, and that both notices appear in supporting documentation.
1.1.1.2   root       11:  *
1.1       root       12:  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
                     13:  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
                     14:  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
1.1.1.2   root       15:  *
1.1       root       16:  * Carnegie Mellon requests users of this software to return to
1.1.1.2   root       17:  *
1.1       root       18:  *  Software Distribution Coordinator  or  [email protected]
                     19:  *  School of Computer Science
                     20:  *  Carnegie Mellon University
                     21:  *  Pittsburgh PA 15213-3890
1.1.1.2   root       22:  *
1.1       root       23:  * any improvements or extensions that they make and grant Carnegie Mellon
                     24:  * the rights to redistribute these changes.
                     25:  */
                     26: /*
                     27:  *     File:   ipc/ipc_hash.h
                     28:  *     Author: Rich Draves
                     29:  *     Date:   1989
                     30:  *
                     31:  *     Declarations of entry hash table operations.
                     32:  */
                     33: 
                     34: #ifndef        _IPC_IPC_HASH_H_
                     35: #define _IPC_IPC_HASH_H_
                     36: 
                     37: #include <mach/boolean.h>
                     38: #include <mach/kern_return.h>
                     39: 
1.1.1.3 ! root       40: typedef natural_t ipc_hash_index_t;
        !            41: 
1.1       root       42: extern void
1.1.1.3 ! root       43: ipc_hash_init(void);
1.1       root       44: 
                     45: #if    MACH_IPC_DEBUG
                     46: 
1.1.1.3 ! root       47: extern ipc_hash_index_t
        !            48: ipc_hash_info(hash_info_bucket_t *, mach_msg_type_number_t);
1.1       root       49: 
1.1.1.2   root       50: #endif /* MACH_IPC_DEBUG */
1.1       root       51: 
                     52: extern boolean_t
1.1.1.3 ! root       53: ipc_hash_lookup(ipc_space_t space, ipc_object_t obj,
        !            54:                mach_port_t *namep, ipc_entry_t *entryp);
1.1       root       55: 
                     56: extern void
1.1.1.3 ! root       57: ipc_hash_insert(ipc_space_t space, ipc_object_t obj,
        !            58:                mach_port_t name, ipc_entry_t entry);
1.1       root       59: 
                     60: extern void
1.1.1.3 ! root       61: ipc_hash_delete(ipc_space_t space, ipc_object_t obj,
        !            62:                mach_port_t name, ipc_entry_t entry);
1.1       root       63: 
                     64: /*
                     65:  *     For use by functions that know what they're doing:
                     66:  *     the global primitives, for splay tree entries,
                     67:  *     and the local primitives, for table entries.
                     68:  */
                     69: 
1.1.1.3 ! root       70: #define        IPC_HASH_GLOBAL_SIZE    256
        !            71: 
1.1       root       72: extern boolean_t
1.1.1.3 ! root       73: ipc_hash_global_lookup(ipc_space_t space, ipc_object_t obj,
        !            74:                       mach_port_t *namep, ipc_tree_entry_t *entryp);
1.1       root       75: 
                     76: extern void
1.1.1.3 ! root       77: ipc_hash_global_insert(ipc_space_t space, ipc_object_t obj,
        !            78:                       mach_port_t name, ipc_tree_entry_t entry);
1.1       root       79: 
                     80: extern void
1.1.1.3 ! root       81: ipc_hash_global_delete(ipc_space_t space, ipc_object_t obj,
        !            82:                       mach_port_t name, ipc_tree_entry_t entry);
1.1       root       83: 
                     84: extern boolean_t
1.1.1.3 ! root       85: ipc_hash_local_lookup(ipc_space_t space, ipc_object_t obj,
        !            86:                      mach_port_t *namep, ipc_entry_t *entryp);
1.1       root       87: 
                     88: extern void
1.1.1.3 ! root       89: ipc_hash_local_insert(ipc_space_t space, ipc_object_t obj,
        !            90:                      mach_port_index_t index, ipc_entry_t entry);
1.1       root       91: 
                     92: extern void
1.1.1.3 ! root       93: ipc_hash_local_delete(ipc_space_t space, ipc_object_t obj,
        !            94:                      mach_port_index_t index, ipc_entry_t entry);
1.1       root       95: 
1.1.1.2   root       96: #endif /* _IPC_IPC_HASH_H_ */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.