1/* -----------------------------------------------------------------------------
2 * Copyright (c) 2011 Ozmo Inc
3 * Released under the GNU General Public License Version 2 (GPLv2).
4 * -----------------------------------------------------------------------------
5 */
6#ifndef _OZAPPIF_H
7#define _OZAPPIF_H
8
9#define OZ_IOCTL_MAGIC	0xf4
10
11struct oz_mac_addr {
12	__u8 a[6];
13};
14
15#define OZ_MAX_PDS	8
16
17struct oz_pd_list {
18	__u32 count;
19	struct oz_mac_addr addr[OZ_MAX_PDS];
20};
21
22#define OZ_MAX_BINDING_LEN	32
23
24struct oz_binding_info {
25	char name[OZ_MAX_BINDING_LEN];
26};
27
28#define OZ_IOCTL_GET_PD_LIST	_IOR(OZ_IOCTL_MAGIC, 0, struct oz_pd_list)
29#define OZ_IOCTL_SET_ACTIVE_PD	_IOW(OZ_IOCTL_MAGIC, 1, struct oz_mac_addr)
30#define OZ_IOCTL_GET_ACTIVE_PD	_IOR(OZ_IOCTL_MAGIC, 2, struct oz_mac_addr)
31#define OZ_IOCTL_ADD_BINDING	_IOW(OZ_IOCTL_MAGIC, 3, struct oz_binding_info)
32#define OZ_IOCTL_REMOVE_BINDING	_IOW(OZ_IOCTL_MAGIC, 4, struct oz_binding_info)
33#define OZ_IOCTL_MAX		5
34
35
36#endif /* _OZAPPIF_H */
37