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/>.
28 static const char *MODULE_LIST = "/proc/modules";
30 gboolean mtetherd_scan_modules(const char *module) {
31 g_log(MTETHERD_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, "Scanning %s", MODULE_LIST);
33 FILE *fp = fopen(MODULE_LIST, "r");
37 gboolean found = FALSE;
39 while (!found && getline(&line, NULL, fp) != -1) {
40 g_log(MTETHERD_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, "Checking if '%s' starts with %s...", line, module);
41 if (g_str_has_prefix(line, module) == 0) {
42 g_log(MTETHERD_LOG_DOMAIN, G_LOG_LEVEL_MESSAGE, "Found %s", module);
52 gboolean mtetherd_launch_script(const char *command[]) {
55 if (execv(command[0], (char **const) command) == -1) {
58 } else if (pid == -1) {