rtmsg
struct rtmsg r;
struct rtmsg *r = NLMSG_DATA(&req.n);
req.n.nlmsg_len = NLMSG_LENGTH(sizeof(struct rtmsg));
struct rtmsg *rtm;
static int rtmsg(int, int, struct sou *);
if ((ret = rtmsg(*cmd, flags, soup)) == 0)
rtm = rtmsg(s, RTM_GET, NULL, &sin_m, &sdl_m);
rtm = rtmsg(s, RTM_ADD, NULL, &sin_m, &sdl_m);
rtm = rtmsg(s, RTM_DELETE, rtm, sina, sdl);
static struct rt_msghdr * rtmsg(const int, const int, struct rt_msghdr *,
static int rtmsg(int, struct rt_msghdr *);
if (rtmsg(RTM_GET, NULL) < 0) {
return (rtmsg(RTM_ADD, NULL));
if (rtmsg(RTM_DELETE, rtm) == 0) {
if (rtmsg(RTM_GET, s, rtm, &sin_m, &sdl_m) < 0) {
result = rtmsg(RTM_ADD, s, rtm, &sin_m, &sdl_m);
int rtmsg(int, int, struct rt_msghdr *, struct sockaddr_inarp *,