DUMP_NLONG(buf, p->prefix->prefix.v4.s_addr);
DUMP_NLONG(buf, addr.v4.s_addr);
mrt_dump_entry(struct mrt_config *mrt, struct prefix *p, u_int16_t snum,    struct peer_config *peer){	struct buf	*buf;	void		*bptr;	u_int16_t	 len, attr_len;	attr_len = mrt_attr_length(&p->aspath->flags);	len = MRT_DUMP_HEADER_SIZE + attr_len;	if ((buf = imsg_create(mrt->ibuf, IMSG_MRT_MSG, mrt->id,	    len + MRT_HEADER_SIZE)) == NULL) {		log_warnx("mrt_dump_entry: imsg_open error");		return (-1);	}	if (mrt_dump_header(buf, MSG_TABLE_DUMP, AFI_IPv4, len) == -1) {		log_warnx("mrt_dump_bgp_msg: buf_add error");		return (-1);	}	DUMP_SHORT(buf, 0);	DUMP_SHORT(buf, snum);	DUMP_NLONG(buf, p->prefix->prefix.v4.s_addr);	DUMP_BYTE(buf, p->prefix->prefixlen);	DUMP_BYTE(buf, 1);		/* state */	DUMP_LONG(buf, p->lastchange);	/* originated */	DUMP_NLONG(buf, peer->remote_addr.v4.s_addr);	DUMP_SHORT(buf, peer->remote_as);	DUMP_SHORT(buf, attr_len);	if ((bptr = buf_reserve(buf, attr_len)) == NULL) {		log_warnx("mrt_dump_entry: buf_reserve error");		buf_free(buf);		return (-1);	}	if (mrt_attr_dump(bptr, attr_len, &p->aspath->flags) == -1) {		log_warnx("mrt_dump_entry: mrt_attr_dump error");		buf_free(buf);		return (-1);	}	if ((imsg_close(mrt->ibuf, buf)) == -1) {		log_warnx("mrt_dump_bgp_state: imsg_close error");		return (-1);	}	return (len + MRT_HEADER_SIZE);}