diff options
Diffstat (limited to 'src/network.h')
-rw-r--r-- | src/network.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/network.h b/src/network.h new file mode 100644 index 0000000..db95412 --- /dev/null +++ b/src/network.h @@ -0,0 +1,39 @@ +/* + * functions and data types for networking calls + * + * Copyright (c) 2015 Ultimaker B.V. + * Author: Olliver Schinagl <o.schinagl@ultimaker.com> + * + * SPDX-License-Identifier: AGPL-3.0+ + */ + +#ifndef _NETWORK_H +#define _NETWORK_H + +#include <Eina.h> +#include <Eldbus.h> +#include <stdint.h> + +#define IPV4_MAX_LEN 16 /* 255.255.255.255\0 */ +#define IPV6_MAX_LEN 40 /* ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\0 */ +#define SSID_MAX_LEN 33 /* Section 7.3.2.1 SSID element of IEE802.11-2007 + \0 */ + +enum network_tech { + TECH_UNKNOWN, + TECH_ETHERNET, + TECH_WIFI, +}; + +struct network_data { + char *obj_path; + enum network_tech tech; + char ipv4[IPV4_MAX_LEN]; + char ipv6[IPV6_MAX_LEN]; + char ssid[SSID_MAX_LEN]; +}; + +Eldbus_Pending *network_connect_wifi(const struct network_data *network); +void network_init(Eldbus_Proxy *proxy); +void network_shutdown(void); + +#endif /* _NETWORK_H */ |