sadb_msg
struct sadb_msg;
extern void pfkey_sadump(struct sadb_msg *);
extern void pfkey_spdump(struct sadb_msg *);
int pfkey_set_supported(struct sadb_msg *, int);
struct sadb_msg *pfkey_recv(int);
int pfkey_send(int, struct sadb_msg *, int);
int pfkey_align(struct sadb_msg *, caddr_t *);
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg)
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg)
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg);
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg)
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg)
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *
struct sadb_msg buf, *newmsg;
if ((newmsg = CALLOC(reallen, struct sadb_msg *)) == NULL) {
pfkey_send(int so, struct sadb_msg *msg, int len)
pfkey_align(struct sadb_msg *msg, caddr_t *mhp)
p += sizeof(struct sadb_msg);
struct sadb_msg *msg;
msg = (struct sadb_msg *)mhp[0];
struct sadb_msg *p;
p = (struct sadb_msg *)buf;
len = sizeof(struct sadb_msg);
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg)
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg)
if ((newmsg = CALLOC(len, struct sadb_msg *)) == NULL) {
struct sadb_msg *newmsg;
pfkey_set_supported(struct sadb_msg *msg, int tlen)
p += sizeof(struct sadb_msg);
pfkey_sadump(struct sadb_msg *m)
p += sizeof(struct sadb_msg);
pfkey_spdump(struct sadb_msg *m)
struct sadb_msg *m;
struct sadb_msg *msg;
struct sadb_msg *msg;
msg = (struct sadb_msg *)buf;
l = sizeof(struct sadb_msg);
struct sadb_msg msg;
struct sadb_msg msg;
struct sadb_msg msg;
struct sadb_msg msg;
setkeymsg0(struct sadb_msg *msg, unsigned type, unsigned satype, size_t l)
int setkeymsg0(struct sadb_msg *, unsigned int, unsigned int, size_t);
struct sadb_msg *msg;
msg = (struct sadb_msg *)buf;
l = sizeof(struct sadb_msg);
struct sadb_msg *msg;
msg = (struct sadb_msg *)buf;
l = sizeof(struct sadb_msg);
struct sadb_msg msg;
struct sadb_msg msg;
struct sadb_msg *base;
base = (struct sadb_msg *)rbuf;
struct sadb_msg *msg;
kdebug_sadb((struct sadb_msg *)buf);
msg = (struct sadb_msg *)rbuf;
kdebug_sadb((struct sadb_msg *)rbuf);
postproc(struct sadb_msg *msg)
msg = (struct sadb_msg *)((caddr_t)msg +
kdebug_sadb((struct sadb_msg *)msg);
msg = (struct sadb_msg *)((caddr_t)msg +
kdebug_sadb((struct sadb_msg *)msg);
shortdump(struct sadb_msg *msg)
int postproc(struct sadb_msg *);
void shortdump(struct sadb_msg *);
pfkey_sadump((struct sadb_msg *)m_buf);
pfkey_sadump((struct sadb_msg *)rbuf);
struct sadb_msg m_msg;
m_len = sizeof(struct sadb_msg);
((struct sadb_msg *)m_buf)->sadb_msg_len = PFKEY_UNIT64(m_len);
len = PFKEY_ALIGN8(sizeof(struct sadb_msg));
m_copydata(m, 0, sizeof(struct sadb_msg),
struct sadb_msg *newmsg;
newmsg = mtod(n, struct sadb_msg *);
mpolicy = m_pulldown(n, PFKEY_ALIGN8(sizeof(struct sadb_msg)),
struct sadb_msg *newmsg;
newmsg = mtod(n, struct sadb_msg *);
struct sadb_msg *newmsg;
len = PFKEY_ALIGN8(sizeof(struct sadb_msg));
m_copydata(m, 0, sizeof(struct sadb_msg), mtod(n, caddr_t) + off);
off += PFKEY_ALIGN8(sizeof(struct sadb_msg));
newmsg = mtod(n, struct sadb_msg *);
mtod(result, struct sadb_msg *)->sadb_msg_len =
struct sadb_msg *newmsg;
if (m->m_len != PFKEY_ALIGN8(sizeof(struct sadb_msg)))
if (sizeof(struct sadb_msg) > m->m_len + M_TRAILINGSPACE(m)) {
m->m_pkthdr.len = m->m_len = PFKEY_ALIGN8(sizeof(struct sadb_msg));
newmsg = mtod(m, struct sadb_msg *);
if (result->m_len < sizeof(struct sadb_msg)) {
result = m_pullup(result, sizeof(struct sadb_msg));
mtod(result, struct sadb_msg *)->sadb_msg_len =
if (result->m_len < sizeof(struct sadb_msg)) {
result = m_pullup(result, sizeof(struct sadb_msg));
mtod(result, struct sadb_msg *)->sadb_msg_len =
[SADB_EXT_RESERVED] = sizeof(struct sadb_msg),
if (result->m_len < sizeof(struct sadb_msg)) {
result = m_pullup(result, sizeof(struct sadb_msg));
mtod(result, struct sadb_msg *)->sadb_msg_len =
struct sadb_msg *p;
len = PFKEY_ALIGN8(sizeof(struct sadb_msg));
p = mtod(m, struct sadb_msg *);
[SADB_EXT_RESERVED] = sizeof(struct sadb_msg),
struct sadb_msg *newmsg;
len = PFKEY_ALIGN8(sizeof(struct sadb_msg)) +
m_copydata(m, 0, sizeof(struct sadb_msg), mtod(n, caddr_t) + off);
off += PFKEY_ALIGN8(sizeof(struct sadb_msg));
if (n->m_len < sizeof(struct sadb_msg)) {
n = m_pullup(n, sizeof(struct sadb_msg));
newmsg = mtod(n, struct sadb_msg *);
struct sadb_msg *msg;
if (n->m_len < sizeof(struct sadb_msg)) {
n = m_pullup(n, sizeof(struct sadb_msg));
mtod(n, struct sadb_msg *)->sadb_msg_errno = 0;
mtod(n, struct sadb_msg *)->sadb_msg_len =
struct sadb_msg *newmsg;
if (n->m_len < sizeof(struct sadb_msg)) {
n = m_pullup(n, sizeof(struct sadb_msg));
newmsg = mtod(n, struct sadb_msg *);
struct sadb_msg *newmsg;
if (n->m_len < sizeof(struct sadb_msg)) {
n = m_pullup(n, sizeof(struct sadb_msg));
newmsg = mtod(n, struct sadb_msg *);
if (result->m_len < sizeof(struct sadb_msg)) {
result = m_pullup(result, sizeof(struct sadb_msg));
mtod(result, struct sadb_msg *)->sadb_msg_len =
if (mhp->msg->sadb_msg_len == PFKEY_UNIT64(sizeof(struct sadb_msg))) {
struct sadb_msg *newmsg;
len = sizeof(struct sadb_msg) + alen + elen;
m_copydata(m, 0, sizeof(struct sadb_msg), mtod(n, caddr_t) + off);
newmsg = mtod(n, struct sadb_msg *);
off += PFKEY_ALIGN8(sizeof(struct sadb_msg));
if (result->m_len < sizeof(struct sadb_msg)) {
result = m_pullup(result, sizeof(struct sadb_msg));
mtod(result, struct sadb_msg *)->sadb_msg_len =
struct sadb_msg *newmsg;
if (m->m_len < sizeof(struct sadb_msg) ||
sizeof(struct sadb_msg) > m->m_len + M_TRAILINGSPACE(m)) {
m->m_pkthdr.len = m->m_len = sizeof(struct sadb_msg);
newmsg = mtod(m, struct sadb_msg *);
if (olen < sizeof(struct sadb_msg)) {
} else if (olen == sizeof(struct sadb_msg)) {
m_adj(m, PFKEY_ALIGN8(sizeof(struct sadb_msg)));
struct sadb_msg *msg;
if (m->m_len < sizeof(struct sadb_msg)) {
m = m_pullup(m, sizeof(struct sadb_msg));
msg = mtod(m, struct sadb_msg *);
struct sadb_msg *msg;
IPSEC_ASSERT(m->m_len >= sizeof(struct sadb_msg),
msg = mtod(m, struct sadb_msg *);
IPSEC_ASSERT(m->m_len >= sizeof(struct sadb_msg),
mhp->msg = mtod(m, struct sadb_msg *);
for (off = sizeof(struct sadb_msg); off < end; off += extlen) {
struct sadb_msg;
kdebug_sadb(struct sadb_msg *base)
tlen = PFKEY_UNUNIT64(base->sadb_msg_len) - sizeof(struct sadb_msg);
ext = (struct sadb_ext *)((caddr_t)base + sizeof(struct sadb_msg));
struct sadb_msg;
extern void kdebug_sadb(struct sadb_msg *);
if (len < sizeof(struct sadb_msg)) {
if (m->m_len < sizeof(struct sadb_msg)) {
if ((m = m_pullup(m, sizeof(struct sadb_msg))) == NULL) {
msg = mtod(m, struct sadb_msg *);
struct sadb_msg *pmsg;
M_PREPEND(m, sizeof(struct sadb_msg), M_NOWAIT);
pmsg = mtod(m, struct sadb_msg *);
if (m->m_len < sizeof(struct sadb_msg)) {
m = m_pullup(m, sizeof(struct sadb_msg));
if (m->m_len >= sizeof(struct sadb_msg)) {
struct sadb_msg *msg;
msg = mtod(m, struct sadb_msg *);
struct sadb_msg *msg;