summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
authorToomas Soome <tsoome@me.com>2018-10-19 23:47:01 +0300
committerToomas Soome <tsoome@me.com>2019-03-12 10:21:34 +0200
commitd81c80caa2042c3129dfb6cc3e4f925a05dff732 (patch)
tree7103acbb697a196d58c56cf56a80b076498d7337 /usr/src
parent22d021df94bf5d3f1afa670447527dae297e2012 (diff)
downloadillumos-joyent-d81c80caa2042c3129dfb6cc3e4f925a05dff732.tar.gz
10484 ipsecah: cast between incompatible function types
Reviewed by: Gergő Doma <domag02@gmail.com> Reviewed by: C Fraire <cfraire@me.com> Approved by: Dan McDonald <danmcd@joyent.com>
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/uts/common/inet/ip/ipsecah.c28
1 files changed, 20 insertions, 8 deletions
diff --git a/usr/src/uts/common/inet/ip/ipsecah.c b/usr/src/uts/common/inet/ip/ipsecah.c
index 05e92c4fa4..455b9af72f 100644
--- a/usr/src/uts/common/inet/ip/ipsecah.c
+++ b/usr/src/uts/common/inet/ip/ipsecah.c
@@ -135,7 +135,8 @@ static void ah_outbound_finish(mblk_t *, ip_xmit_attr_t *);
static int ipsecah_open(queue_t *, dev_t *, int, int, cred_t *);
static int ipsecah_close(queue_t *, int, cred_t *);
-static void ipsecah_wput(queue_t *, mblk_t *);
+static int ipsecah_rput(queue_t *, mblk_t *);
+static int ipsecah_wput(queue_t *, mblk_t *);
static boolean_t ah_register_out(uint32_t, uint32_t, uint_t, ipsecah_stack_t *,
cred_t *);
static void *ipsecah_stack_init(netstackid_t stackid, netstack_t *ns);
@@ -151,12 +152,12 @@ static struct module_info info = {
};
static struct qinit rinit = {
- (pfi_t)putnext, NULL, ipsecah_open, ipsecah_close, NULL, &info,
+ ipsecah_rput, NULL, ipsecah_open, ipsecah_close, NULL, &info,
NULL
};
static struct qinit winit = {
- (pfi_t)ipsecah_wput, NULL, ipsecah_open, ipsecah_close, NULL, &info,
+ ipsecah_wput, NULL, ipsecah_open, ipsecah_close, NULL, &info,
NULL
};
@@ -1446,9 +1447,19 @@ ah_keysock_no_socket(mblk_t *mp, ipsecah_stack_t *ahstack)
}
/*
+ * AH module read put routine.
+ */
+static int
+ipsecah_rput(queue_t *q, mblk_t *mp)
+{
+ putnext(q, mp);
+ return (0);
+}
+
+/*
* AH module write put routine.
*/
-static void
+static int
ipsecah_wput(queue_t *q, mblk_t *mp)
{
ipsec_info_t *ii;
@@ -1498,7 +1509,7 @@ ipsecah_wput(queue_t *q, mblk_t *mp)
case ND_GET:
if (nd_getset(q, ahstack->ipsecah_g_nd, mp)) {
qreply(q, mp);
- return;
+ return (0);
} else {
iocp->ioc_error = ENOENT;
}
@@ -1512,7 +1523,7 @@ ipsecah_wput(queue_t *q, mblk_t *mp)
iocp->ioc_count = 0;
mp->b_datap->db_type = M_IOCACK;
qreply(q, mp);
- return;
+ return (0);
}
default:
ah3dbg(ahstack,
@@ -1520,6 +1531,7 @@ ipsecah_wput(queue_t *q, mblk_t *mp)
mp->b_datap->db_type));
putnext(q, mp);
}
+ return (0);
}
/* Refactor me */
@@ -2885,7 +2897,7 @@ ah_process_ip_options_v6(mblk_t *mp, ipsa_t *assoc, int *length_to_skip,
{
ip6_t *ip6h;
ip6_t *oip6h;
- mblk_t *phdr_mp;
+ mblk_t *phdr_mp;
int option_length;
uint_t ah_align_sz;
uint_t ah_offset;
@@ -3003,7 +3015,7 @@ ah_process_ip_options_v4(mblk_t *mp, ipsa_t *assoc, int *length_to_skip,
uint32_t option_length;
ipha_t *ipha;
ipha_t *oipha;
- mblk_t *phdr_mp;
+ mblk_t *phdr_mp;
int size;
uchar_t *optptr;
uint8_t optval;