Blame usr/iscsi_netlink.h

Packit eace71
/*
Packit eace71
 * iSCSI Netlink attr helpers
Packit eace71
 *
Packit eace71
 * Copyright (C) 2011 Red Hat, Inc. All rights reserved.
Packit eace71
 *
Packit eace71
 * This program is free software; you can redistribute it and/or modify
Packit eace71
 * it under the terms of the GNU General Public License as published
Packit eace71
 * by the Free Software Foundation; either version 2 of the License, or
Packit eace71
 * (at your option) any later version.
Packit eace71
 *
Packit eace71
 * This program is distributed in the hope that it will be useful, but
Packit eace71
 * WITHOUT ANY WARRANTY; without even the implied warranty of
Packit eace71
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Packit eace71
 * General Public License for more details.
Packit eace71
 *
Packit eace71
 * See the file COPYING included with this distribution for more details.
Packit eace71
 */
Packit eace71
Packit eace71
#ifndef ISCSI_NLA_H
Packit eace71
#define ISCSI_NLA_H
Packit eace71
Packit eace71
#include <linux/netlink.h>
Packit eace71
Packit eace71
struct iovec;
Packit eace71
Packit eace71
#define ISCSI_NLA_HDRLEN	((int) NLA_ALIGN(sizeof(struct nlattr)))
Packit eace71
#define ISCSI_NLA_DATA(nla)	((void *)((char*)(nla) + ISCSI_NLA_HDRLEN))
Packit eace71
#define ISCSI_NLA_LEN(len) 	((len) + NLA_ALIGN(ISCSI_NLA_HDRLEN))
Packit eace71
#define ISCSI_NLA_TOTAL_LEN(len) (NLA_ALIGN(ISCSI_NLA_LEN(len)))
Packit eace71
Packit eace71
extern struct nlattr *iscsi_nla_alloc(uint16_t type, uint16_t len);
Packit eace71
Packit eace71
#endif