bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] Preemptively fix warnings that will be caused by -Wmissing-proto


From: Flavio Cruz
Subject: [PATCH] Preemptively fix warnings that will be caused by -Wmissing-prototypes
Date: Tue, 10 Jan 2023 01:00:37 -0500

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.
---
 Makefrag.am         |   1 +
 ddb/db_ext_symtab.c |   1 +
 ipc/mach_port.c     |   1 -
 ipc/mach_port.h     | 103 ++++++++++++++++++++++++++++++++++++++++++--
 kern/mach_debug.h   |  40 +++++++++++++++++
 5 files changed, 142 insertions(+), 4 deletions(-)
 create mode 100644 kern/mach_debug.h

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 */
-- 
2.39.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]