From 55452e6ae71869880f8c85d5dba9aa24d7147d8b Mon Sep 17 00:00:00 2001
From: Rudi Heitbaum <rudi@heitbaum.com>
Date: Thu, 2 Jan 2025 08:46:24 -0500
Subject: [PATCH 2/2] update signal and key_call declarations to allow compile
 with gcc-15

Follow up patch addressing the following declarations:
  sed -n 75,77p libtirpc-1.3.6/src/key_call.c
  cryptkeyres *(*__key_encryptsession_pk_LOCAL)() = 0;
  cryptkeyres *(*__key_decryptsession_pk_LOCAL)() = 0;
  des_block *(*__key_gendes_LOCAL)() = 0;

Upstream-Status: Backport [https://git.linux-nfs.org/?p=steved/libtirpc.git;a=commit;h=240ee6c774729c9c24812aa8912f1fcf8996b162]
Signed-off-by: Rudi Heitbaum <rudi@heitbaum.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 src/auth_time.c | 4 ++--
 src/key_call.c  | 6 +++---
 2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/auth_time.c b/src/auth_time.c
index 936dd76..c21b1df 100644
--- a/src/auth_time.c
+++ b/src/auth_time.c
@@ -248,7 +248,7 @@ __rpc_get_time_offset(td, srv, thost, uaddr, netid)
 	char			ut[64], ipuaddr[64];
 	endpoint		teps[32];
 	nis_server		tsrv;
-	void			(*oldsig)() = NULL; /* old alarm handler */
+	void			(*oldsig)(int) = NULL; /* old alarm handler */
 	struct sockaddr_in	sin;
 	int			s = RPC_ANYSOCK;
 	socklen_t len;
@@ -417,7 +417,7 @@ __rpc_get_time_offset(td, srv, thost, uaddr, netid)
 		} else {
 			int res;
 
-			oldsig = (void (*)())signal(SIGALRM, alarm_hndler);
+			oldsig = (void (*)(int))signal(SIGALRM, alarm_hndler);
 			saw_alarm = 0; /* global tracking the alarm */
 			alarm(20); /* only wait 20 seconds */
 			res = connect(s, (struct sockaddr *)&sin, sizeof(sin));
diff --git a/src/key_call.c b/src/key_call.c
index 9f4b1d2..43f990e 100644
--- a/src/key_call.c
+++ b/src/key_call.c
@@ -72,9 +72,9 @@
  * implementations of these functions, and to call those in key_call().
  */
 
-cryptkeyres *(*__key_encryptsession_pk_LOCAL)() = 0;
-cryptkeyres *(*__key_decryptsession_pk_LOCAL)() = 0;
-des_block *(*__key_gendes_LOCAL)() = 0;
+cryptkeyres *(*__key_encryptsession_pk_LOCAL)(uid_t, char *) = 0;
+cryptkeyres *(*__key_decryptsession_pk_LOCAL)(uid_t, char *) = 0;
+des_block *(*__key_gendes_LOCAL)(uid_t, char *) = 0;
 
 static int key_call( u_long, xdrproc_t, void *, xdrproc_t, void *);
 
