usb_moded 0.86.0+mer64
usb_moded-dyn-config.h
Go to the documentation of this file.
1
31
32#ifndef USB_MODED_DYN_CONFIG_H_
33# define USB_MODED_DYN_CONFIG_H_
34
35# include <stdbool.h>
36# include <glib.h>
37
38/* ========================================================================= *
39 * Constants
40 * ========================================================================= */
41
42# define MODE_DIR_PATH "/etc/usb-moded/dyn-modes"
43# define DIAG_DIR_PATH "/etc/usb-moded/diag"
44
45/* - - - - - - - - - - - - - - - - - - - *
46 * [mode] ini-file block
47 * - - - - - - - - - - - - - - - - - - - */
48
49# define MODE_ENTRY "mode"
50# define MODE_NAME_KEY "name"
51# define MODE_MODULE_KEY "module"
52# define MODE_NEEDS_APPSYNC_KEY "appsync" // integer
53# define MODE_NETWORK_KEY "network" // integer
54# define MODE_MASS_STORAGE_KEY "mass_storage" // integer
55# define MODE_NETWORK_INTERFACE_KEY "network_interface"
56
57/* - - - - - - - - - - - - - - - - - - - *
58 * [options] ini-file block
59 * - - - - - - - - - - - - - - - - - - - */
60
61# define MODE_OPTIONS_ENTRY "options"
62# define MODE_SYSFS_PATH "sysfs_path"
63
64/* This is list of gadget functions, except for
65 * host-mode config ... */
66# define MODE_SYSFS_VALUE "sysfs_value"
67# define MODE_SYSFS_RESET_VALUE "sysfs_reset_value"
68
69/* Instead of hard-coding values that never change or have only one option,
70 android engineers prefered to have sysfs entries... go figure... */
71# define MODE_ANDROID_EXTRA_SYSFS_PATH "android_extra_sysfs_path"
72# define MODE_ANDROID_EXTRA_SYSFS_VALUE "android_extra_sysfs_value"
73
74/* in combined android gadgets we sometime need more than one extra sysfs path or value */
75# define MODE_ANDROID_EXTRA_SYSFS_PATH2 "android_extra_sysfs_path2"
76# define MODE_ANDROID_EXTRA_SYSFS_VALUE2 "android_extra_sysfs_value2"
77# define MODE_ANDROID_EXTRA_SYSFS_PATH3 "android_extra_sysfs_path3"
78# define MODE_ANDROID_EXTRA_SYSFS_VALUE3 "android_extra_sysfs_value3"
79# define MODE_ANDROID_EXTRA_SYSFS_PATH4 "android_extra_sysfs_path4"
80# define MODE_ANDROID_EXTRA_SYSFS_VALUE4 "android_extra_sysfs_value4"
81
82/* For windows different modes/usb profiles need their own idProduct */
83# define MODE_IDPRODUCT "idProduct"
84# define MODE_IDVENDOROVERRIDE "idVendorOverride"
85# define MODE_HAS_NAT "nat" // integer
86# define MODE_HAS_DHCP_SERVER "dhcp_server" // integer
87
88# ifdef CONNMAN
89# define MODE_CONNMAN_TETHERING "connman_tethering"
90# endif
91
92/* ========================================================================= *
93 * Types
94 * ========================================================================= */
95
133
134/* ========================================================================= *
135 * Prototypes
136 * ========================================================================= */
137
138/* ------------------------------------------------------------------------- *
139 * MODEDATA
140 * ------------------------------------------------------------------------- */
141
142void modedata_free (modedata_t *self);
143modedata_t *modedata_copy (const modedata_t *that);
144void modedata_cache_settings(modedata_t *self);
145
146/* ------------------------------------------------------------------------- *
147 * MODELIST
148 * ------------------------------------------------------------------------- */
149
150void modelist_free(GList *modelist);
151GList *modelist_load(bool diag);
152
153#endif /* USB_MODED_DYN_CONFIG_H_ */
gchar * android_extra_sysfs_value3
gchar * cached_nat_interface
gchar * android_extra_sysfs_path3
gchar * android_extra_sysfs_path
gchar * android_extra_sysfs_path4
gchar * android_extra_sysfs_value4
gchar * android_extra_sysfs_value2
gchar * android_extra_sysfs_value
gchar * android_extra_sysfs_path2
void modelist_free(GList *modelist)
void modedata_free(modedata_t *self)
modedata_t * modedata_copy(const modedata_t *that)
GList * modelist_load(bool diag)