3 (c) 2010 Gregor Riepl <onitake@gmail.com>
5 Tethering utility for Maemo
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>.
25 static const char *MODULE_LIST = "/proc/modules";
27 gboolean mtetherd_scan_modules(const char *module) {
28 g_message("Scanning %s", MODULE_LIST);
30 FILE *fp = fopen(MODULE_LIST, "r");
34 gboolean found = FALSE;
36 while (!found && getline(&line, NULL, fp) != -1) {
37 g_debug("Checking if '%s' starts with %s...", line, module);
38 if (strcmp(line, module, strlen(module)) == 0) {
39 g_message("Found %s", module);
49 gboolean mtetherd_launch_script(const char *command[]) {
53 arg = SBIN_DIR "mtetherd-usbnet-enable.sh";
55 arg = SBIN_DIR "mtetherd-usbnet-disable.sh";
57 g_debug("Launching %s", arg);
58 const char *command[] = { "/usr/bin/sudo", arg, NULL };
62 if (execv(command[0], (char **const) command) == -1) {
65 } else if (pid == -1) {