diff options
author | Flavio Cruz <flaviocruz@gmail.com> | 2023-01-10 01:00:37 -0500 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2023-01-10 22:18:34 +0100 |
commit | 963b1794d7117064cee8ab5638b329db51dad854 (patch) | |
tree | d9b6d60289fdc3c134dce5e0edc1f58f820e5608 | |
parent | d5e5dd3401ea0d0475aa830c2171be5b8a72f4fa (diff) | |
download | gnumach-963b1794d7117064cee8ab5638b329db51dad854.tar.gz gnumach-963b1794d7117064cee8ab5638b329db51dad854.tar.bz2 gnumach-963b1794d7117064cee8ab5638b329db51dad854.zip |
Preemptively fix warnings that will be caused by -Wmissing-prototypes
Declared RPCs in ipc/mach_port.c and ddb/db_ext_symtab.c in their corresponding headers.
Ideally these should be used by mig instead of mig declaring its own
prototypes.
Message-Id: <Y7z/BQhmsBbRgxhe@jupiter.tail36e24.ts.net>
-rw-r--r-- | Makefrag.am | 1 | ||||
-rw-r--r-- | ddb/db_ext_symtab.c | 1 | ||||
-rw-r--r-- | ipc/mach_port.c | 1 | ||||
-rw-r--r-- | ipc/mach_port.h | 103 | ||||
-rw-r--r-- | kern/mach_debug.h | 40 |
5 files changed, 142 insertions, 4 deletions
diff --git a/Makefrag.am b/Makefrag.am index e2b4a3ba..8a82caee 100644 --- a/Makefrag.am +++ b/Makefrag.am @@ -170,6 +170,7 @@ libkernel_a_SOURCES += \ kern/log2.h \ kern/mach_clock.c \ kern/mach_clock.h \ + kern/mach_debug.h \ kern/mach_factor.c \ kern/mach_factor.h \ kern/machine.c \ diff --git a/ddb/db_ext_symtab.c b/ddb/db_ext_symtab.c index e1bdfd8b..9c89fb95 100644 --- a/ddb/db_ext_symtab.c +++ b/ddb/db_ext_symtab.c @@ -35,6 +35,7 @@ #include <vm/vm_kern.h> #include <vm/vm_user.h> #include <kern/host.h> +#include <kern/mach_debug.h> #include <kern/task.h> #include <ddb/db_sym.h> diff --git a/ipc/mach_port.c b/ipc/mach_port.c index e5a5e978..1c9cdc97 100644 --- a/ipc/mach_port.c +++ b/ipc/mach_port.c @@ -62,7 +62,6 @@ #include <ipc/mach_port.h> - /* * Routine: mach_port_names_helper * Purpose: diff --git a/ipc/mach_port.h b/ipc/mach_port.h index 83641ae6..c93c48df 100644 --- a/ipc/mach_port.h +++ b/ipc/mach_port.h @@ -30,6 +30,12 @@ #include <ipc/ipc_types.h> #include <ipc/ipc_entry.h> +#if MACH_KDB +void db_debug_port_references (boolean_t enable); +#endif /* MACH_KDB */ + +/* RPCs */ + extern kern_return_t mach_port_allocate_name ( ipc_space_t space, @@ -65,8 +71,99 @@ mach_port_get_receive_status( mach_port_name_t name, mach_port_status_t *statusp); -#if MACH_KDB -void db_debug_port_references (boolean_t enable); -#endif /* MACH_KDB */ +kern_return_t +mach_port_names( + ipc_space_t space, + mach_port_name_t **namesp, + mach_msg_type_number_t *namesCnt, + mach_port_type_t **typesp, + mach_msg_type_number_t *typesCnt); + +kern_return_t +mach_port_type( + ipc_space_t space, + mach_port_name_t name, + mach_port_type_t *typep); + +kern_return_t +mach_port_rename( + ipc_space_t space, + mach_port_name_t oname, + mach_port_name_t nname); + +kern_return_t +mach_port_get_refs( + ipc_space_t space, + mach_port_name_t name, + mach_port_right_t right, + mach_port_urefs_t *urefsp); + +kern_return_t +mach_port_mod_refs( + ipc_space_t space, + mach_port_name_t name, + mach_port_right_t right, + mach_port_delta_t delta); + +kern_return_t +mach_port_set_qlimit( + ipc_space_t space, + mach_port_name_t name, + mach_port_msgcount_t qlimit); + +kern_return_t +mach_port_set_mscount( + ipc_space_t space, + mach_port_name_t name, + mach_port_mscount_t mscount); + +kern_return_t +mach_port_set_seqno( + ipc_space_t space, + mach_port_name_t name, + mach_port_seqno_t seqno); + +kern_return_t +mach_port_get_set_status( + ipc_space_t space, + mach_port_name_t name, + mach_port_name_t **members, + mach_msg_type_number_t *membersCnt); + +kern_return_t +mach_port_move_member( + ipc_space_t space, + mach_port_name_t member, + mach_port_name_t after); + +kern_return_t +mach_port_request_notification( + ipc_space_t space, + mach_port_name_t name, + mach_msg_id_t id, + mach_port_mscount_t sync, + ipc_port_t notify, + ipc_port_t *previousp); + +kern_return_t +mach_port_extract_right( + ipc_space_t space, + mach_port_name_t name, + mach_msg_type_name_t msgt_name, + ipc_port_t *poly, + mach_msg_type_name_t *polyPoly); + +kern_return_t +mach_port_set_protected_payload( + ipc_space_t space, + mach_port_name_t name, + unsigned long payload); + +kern_return_t +mach_port_clear_protected_payload( + ipc_space_t space, + mach_port_name_t name); + +/* End of RPCs */ #endif /* _IPC_MACH_PORT_H_ */ diff --git a/kern/mach_debug.h b/kern/mach_debug.h new file mode 100644 index 00000000..63b8ae96 --- /dev/null +++ b/kern/mach_debug.h @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2023 Free Software Foundation, Inc. + * + * This file is part of GNU Mach. + * + * GNU Mach is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2, or (at your option) any later + * version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + */ + +#ifndef _KERN_MACH_DEBUG_H +#define _KERN_MACH_DEBUG_H + +#include <mach/mach_types.h> /* task_t, pointer_t */ +#include <kern/task.h> + +/* RPCs */ + +#if defined(MACH_KDB) && defined(MACH_DEBUG) +kern_return_t host_load_symbol_table( + host_t host, + task_t task, + char *name, + pointer_t symtab, + unsigned int symbtab_count); +#endif /* defined(MACH_KDB) && defined(MACH_DEBUG) */ + +/* End of RPCs */ + +#endif /* _KERN_MACH_DEBUG_H */ |