int main(int argc, char *argv[]) { struct libmnt_context *cxt; int rc; mnt_init_debug(0); cxt = mnt_new_context(); if (!cxt) { nfs_error(_("Can't initilize libmount: %s"), strerror(errno)); rc = EX_FAIL; goto done; } progname = basename(argv[0]); nfs_mount_data_version = discover_nfs_mount_data_version(&string); if(strncmp(progname, "umount", 6) == 0) rc = umount_main(cxt, argc, argv); else rc = mount_main(cxt, argc, argv); done: mnt_free_context(cxt); return rc; }
int main (int argc, char *argv[]) { struct libmnt_fs *fs; struct libmnt_table *tab; mnt_init_debug(0xffff); tab = mnt_new_table_from_file("/proc/self/mounts"); fs = mnt_table_find_target(tab, argv[2], MNT_ITER_BACKWARD); char *source = mnt_fs_get_source(fs); if (strcmp(source, argv[1]) == 0) printf("is mounted\n"); else printf("could not find fs in tab\n"); mnt_free_table(tab); #if 0 int rc; struct libmnt_fs *fs; struct libmnt_context *cxt = mnt_new_context(); mnt_init_debug(0xffff); mnt_context_set_source(cxt, argv[1]); mnt_context_set_target(cxt, argv[2]); fs = mnt_context_get_fs(cxt); if (fs != NULL) { if (mnt_context_is_fs_mounted(cxt, fs, &rc)) rc = 1; else printf("can't find fs in mtab\n"); } else printf("Can't get fs from mnt context\n"); mnt_free_context(cxt); #endif return 0; }
int main(int argc, char *argv[]) { if (argc == 2) { int mask; errno = 0; mask = strtoul(argv[1], 0, 0); if (errno) return 1; mnt_init_debug(mask); } else if (argc == 1) { mnt_init_debug(0); } else return 1; return 0; }
int mnt_run_test(struct libmnt_test *tests, int argc, char *argv[]) { int rc = -1; struct libmnt_test *ts; assert(tests); assert(argc); assert(argv); if (argc < 2 || strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-h") == 0) goto usage; mnt_init_debug(0); for (ts = tests; ts->name; ts++) { if (strcmp(ts->name, argv[1]) == 0) { rc = ts->body(ts, argc - 1, argv + 1); if (rc) printf("FAILED [rc=%d]", rc); break; } } if (rc < 0 && ts->name == NULL) goto usage; return rc == 0 ? EXIT_SUCCESS : EXIT_FAILURE; usage: printf("\nUsage:\n\t%s <test> [testoptions]\nTests:\n", program_invocation_short_name); for (ts = tests; ts->name; ts++) { printf("\t%-15s", ts->name); if (ts->usage) printf(" %s\n", ts->usage); } printf("\n"); return EXIT_FAILURE; }
int main(int argc, char **argv) { int c; struct mountpoint_control ctl = { NULL }; static const struct option longopts[] = { { "quiet", no_argument, NULL, 'q' }, { "fs-devno", no_argument, NULL, 'd' }, { "devno", no_argument, NULL, 'x' }, { "help", no_argument, NULL, 'h' }, { "version", no_argument, NULL, 'V' }, { NULL, 0, NULL, 0 } }; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); atexit(close_stdout); mnt_init_debug(0); while ((c = getopt_long(argc, argv, "qdxhV", longopts, NULL)) != -1) { switch(c) { case 'q': ctl.quiet = 1; break; case 'd': ctl.fs_devno = 1; break; case 'x': ctl.dev_devno = 1; break; case 'h': usage(); break; case 'V': printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: errtryhelp(EXIT_FAILURE); } } if (optind + 1 != argc) { warnx(_("bad usage")); errtryhelp(EXIT_FAILURE); } ctl.path = argv[optind]; if (stat(ctl.path, &ctl.st)) { if (!ctl.quiet) err(EXIT_FAILURE, "%s", ctl.path); return EXIT_FAILURE; } if (ctl.dev_devno) return print_devno(&ctl) ? EXIT_FAILURE : EXIT_SUCCESS; if (dir_to_device(&ctl)) { if (!ctl.quiet) printf(_("%s is not a mountpoint\n"), ctl.path); return EXIT_FAILURE; } if (ctl.fs_devno) printf("%u:%u\n", major(ctl.dev), minor(ctl.dev)); else if (!ctl.quiet) printf(_("%s is a mountpoint\n"), ctl.path); return EXIT_SUCCESS; }
int main(int argc, char **argv) { int c, fs_devno = 0, dev_devno = 0, rc = 0; char *spec; struct stat st; static const struct option longopts[] = { { "quiet", 0, 0, 'q' }, { "fs-devno", 0, 0, 'd' }, { "devno", 0, 0, 'x' }, { "help", 0, 0, 'h' }, { "version", 0, 0, 'V' }, { NULL, 0, 0, 0 } }; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); atexit(close_stdout); mnt_init_debug(0); while ((c = getopt_long(argc, argv, "qdxhV", longopts, NULL)) != -1) { switch(c) { case 'q': quiet = 1; break; case 'd': fs_devno = 1; break; case 'x': dev_devno = 1; break; case 'h': usage(stdout); break; case 'V': printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; default: usage(stderr); break; } } if (optind + 1 != argc) usage(stderr); spec = argv[optind++]; if (stat(spec, &st)) { if (!quiet) err(EXIT_FAILURE, "%s", spec); return EXIT_FAILURE; } if (dev_devno) rc = print_devno(spec, &st); else { dev_t src; if (!S_ISDIR(st.st_mode)) { if (!quiet) errx(EXIT_FAILURE, _("%s: not a directory"), spec); return EXIT_FAILURE; } if ( dir_to_device(spec, &src)) { if (!quiet) printf(_("%s is not a mountpoint\n"), spec); return EXIT_FAILURE; } if (fs_devno) printf("%u:%u\n", major(src), minor(src)); else if (!quiet) printf(_("%s is a mountpoint\n"), spec); } return rc ? EXIT_FAILURE : EXIT_SUCCESS; }
int main(int argc, char *argv[]) { int status = 0, c; size_t i; static const struct option long_opts[] = { { "all", 0, 0, 'a' }, { "help", 0, 0, 'h' }, { "verbose", 0, 0, 'v' }, { "version", 0, 0, 'V' }, { NULL, 0, 0, 0 } }; setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); atexit(close_stdout); while ((c = getopt_long(argc, argv, "ahvVL:U:", long_opts, NULL)) != -1) { switch (c) { case 'a': /* all */ ++all; break; case 'h': /* help */ usage(stdout); break; case 'v': /* be chatty */ ++verbose; break; case 'V': /* version */ printf(UTIL_LINUX_VERSION); return EXIT_SUCCESS; case 'L': add_label(optarg); break; case 'U': add_uuid(optarg); break; case '?': default: usage(stderr); } } argv += optind; if (!all && !numof_labels() && !numof_uuids() && *argv == NULL) usage(stderr); mnt_init_debug(0); mntcache = mnt_new_cache(); for (i = 0; i < numof_labels(); i++) status |= swapoff_by("LABEL", get_label(i), !QUIET); for (i = 0; i < numof_uuids(); i++) status |= swapoff_by("UUID", get_uuid(i), !QUIET); while (*argv != NULL) status |= do_swapoff(*argv++, !QUIET, !CANONIC); if (all) status |= swapoff_all(); free_tables(); mnt_unref_cache(mntcache); return status; }