/** * @brief Print errors and warnings that were detected while * checking INI file against the grammar object. * * EXPERIMENTAL. Reserved for future use. * * @param[in] file File descriptor. * @param[in] error_list List of the parsing errors. * */ void print_validation_errors(FILE *file, struct collection_item *error_list) { print_error_list(file, error_list, COL_CLASS_INI_VERROR, WRONG_VALIDATION, FAILED_TO_PROC_V, ERROR_HEADER_V, LINE_FORMAT, INI_FAMILY_VALIDATION); }
/** * @brief Print errors and warnings that were detected while * checking grammar of the template. * * EXPERIMENTAL. Reserved for future use. * * @param[in] file File descriptor. * @param[in] error_list List of the parsing errors. * */ void print_grammar_errors(FILE *file, struct collection_item *error_list) { print_error_list(file, error_list, COL_CLASS_INI_GERROR, WRONG_GRAMMAR, FAILED_TO_PROC_G, ERROR_HEADER_G, LINE_FORMAT, INI_FAMILY_GRAMMAR); }
/* Print errors and warnings that were detected while parsing one file */ void print_file_parsing_errors(FILE *file, struct collection_item *error_list) { print_error_list(file, error_list, COL_CLASS_INI_PERROR, WRONG_COLLECTION, FAILED_TO_PROCCESS, ERROR_HEADER, LINE_FORMAT, INI_FAMILY_PARSING); }
int main(int argc, char *argv[]) { int opts, err = -1; char *cmd_name = NULL; opkg_cmd_t *cmd; int nocheckfordirorfile; int noreadfeedsfile; if (opkg_conf_init()) goto err0; opkg_config->verbosity = NOTICE; opts = args_parse(argc, argv); if (opts == argc || opts < 0) { fprintf(stderr, "opkg must have one sub-command argument\n"); usage(); } cmd_name = argv[opts++]; nocheckfordirorfile = !strcmp(cmd_name, "print-architecture") || !strcmp(cmd_name, "print_architecture") || !strcmp(cmd_name, "print-installation-architecture") || !strcmp(cmd_name, "print_installation_architecture"); noreadfeedsfile = !strcmp(cmd_name, "flag") || !strcmp(cmd_name, "configure") || !strcmp(cmd_name, "remove") || !strcmp(cmd_name, "files") || !strcmp(cmd_name, "search") || !strcmp(cmd_name, "compare_versions") || !strcmp(cmd_name, "compare-versions") || !strcmp(cmd_name, "list_installed") || !strcmp(cmd_name, "list-installed") || !strcmp(cmd_name, "list_changed_conffiles") || !strcmp(cmd_name, "list-changed-conffiles") || !strcmp(cmd_name, "status"); cmd = opkg_cmd_find(cmd_name); if (cmd == NULL) { fprintf(stderr, "%s: unknown sub-command %s\n", argv[0], cmd_name); usage(); } opkg_config->pfm = cmd->pfm; if (opkg_conf_load()) goto err0; if (!nocheckfordirorfile) { if (!noreadfeedsfile) { if (pkg_hash_load_feeds()) goto err1; } if (pkg_hash_load_status_files()) goto err1; } if (cmd->requires_args && opts == argc) { fprintf(stderr, "%s: the ``%s'' command requires at least one argument\n", argv[0], cmd_name); usage(); } err = opkg_cmd_exec(cmd, argc - opts, (const char **)(argv + opts)); opkg_download_cleanup(); err1: opkg_conf_deinit(); err0: print_error_list(); free_error_list(); return err; }
int main (int argc, char **argv) { pkg_t *pkg; int err; if (argc < 2) { printf ("Usage: %s command\n" "\nCommands:\n" "\tupdate - Update package lists\n" "\tfind [package] - Print details of the specified package\n" "\tinstall [package] - Install the specified package\n" "\tupgrade [package] - Upgrade the specified package\n" "\tlist upgrades - List the available upgrades\n" "\tlist all - List all available packages\n" "\tlist installed - List all the installed packages\n" "\tremove [package] - Remove the specified package\n" "\trping - Reposiroties ping, check the accessibility of repositories\n" "\ttest - Run test script\n" , basename (argv[0])); exit (0); } setenv("OFFLINE_ROOT", "/tmp", 0); if (opkg_new ()) { printf("opkg_new() failed. This sucks.\n"); print_error_list(); return 1; } switch (argv[1][0]) { case 'f': pkg = opkg_find_package (argv[2], NULL, NULL, NULL); if (pkg) { print_package (pkg); } else printf ("Package \"%s\" not found!\n", find_pkg->name); break; case 'i': err = opkg_install_package (argv[2], progress_callback, "Installing..."); printf ("\nopkg_install_package returned %d\n", err); break; case 'u': if (argv[1][2] == 'd') { err = opkg_update_package_lists (progress_callback, "Updating..."); printf ("\nopkg_update_package_lists returned %d\n", err); break; } else { if (argc < 3) { err = opkg_upgrade_all (progress_callback, "Upgrading all..."); printf ("\nopkg_upgrade_all returned %d\n", err); } else { err = opkg_upgrade_package (argv[2], progress_callback, "Upgrading..."); printf ("\nopkg_upgrade_package returned %d\n", err); } } break; case 'l': if (argc < 3) { printf ("Please specify one either all, installed or upgrades\n"); } else { switch (argv[2][0]) { case 'u': printf ("Listing upgradable packages...\n"); opkg_list_upgradable_packages (package_list_upgradable_callback, NULL); break; case 'a': printf ("Listing all packages...\n"); opkg_list_packages (package_list_callback, NULL); printf ("\n"); break; case 'i': printf ("Listing installed packages...\n"); opkg_list_packages (package_list_installed_callback, NULL); break; default: printf ("Unknown list option \"%s\"\n", argv[2]); } } break; case 'r': if (argv[1][1] == 'e') { err = opkg_remove_package (argv[2], progress_callback, "Removing..."); printf ("\nopkg_remove_package returned %d\n", err); break; }else if (argv[1][1] == 'p') { err = opkg_repository_accessibility_check(); printf("\nopkg_repository_accessibility_check returned (%d)\n", err); break; } default: printf ("Unknown command \"%s\"\n", argv[1]); } opkg_free (); return 0; }