X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fwgtpkg-info.c;h=f5d1b42e7807d6bb2632b99e8cdf7e247bcec6ec;hb=941eb7ef734e7d6a9de9c7af13345e63f708d169;hp=1a7724bb5ef487738a8db0a120cd86d1af57e64d;hpb=f3d64b7c741677cd28e2a11deed67196cd02b46a;p=src%2Fapp-framework-main.git diff --git a/src/wgtpkg-info.c b/src/wgtpkg-info.c index 1a7724b..f5d1b42 100644 --- a/src/wgtpkg-info.c +++ b/src/wgtpkg-info.c @@ -1,5 +1,7 @@ /* - Copyright 2015 IoT.bzh + Copyright 2015, 2016, 2017 IoT.bzh + + author: José Bollo Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -14,19 +16,22 @@ limitations under the License. */ -#define _BSD_SOURCE /* see readdir */ - #include #include #include #include #include #include -#include #include +#include + #include "verbose.h" -#include "wgtpkg.h" +#include "wgtpkg-workdir.h" +#include "wgtpkg-files.h" +#include "wgtpkg-zip.h" +#include "wgtpkg-digsig.h" +#include "wgtpkg-xmlsec.h" #include "wgt.h" #include "wgt-info.h" @@ -37,7 +42,7 @@ static void show(const char *wgtfile); static void usage() { printf( - "usage: %s [-f] [-q] [-v] wgtfile...\n" + "usage: %s [-q] [-v] wgtfile...\n" "\n" " -q quiet\n" " -v verbose\n" @@ -59,7 +64,7 @@ int main(int ac, char **av) int i; char *wpath; - openlog(appname, LOG_PERROR, LOG_USER); + LOGUSER(appname); xmlsec_init(); @@ -79,10 +84,10 @@ int main(int ac, char **av) verbosity++; break; case ':': - syslog(LOG_ERR, "missing argument value"); + ERROR("missing argument value"); return 1; default: - syslog(LOG_ERR, "unrecognized option"); + ERROR("unrecognized option"); return 1; } } @@ -92,7 +97,7 @@ int main(int ac, char **av) for (i = 0 ; av[i] != NULL ; i++) { wpath = realpath(av[i], NULL); if (wpath == NULL) { - syslog(LOG_ERR, "error while getting realpath of %dth widget: %s", i+1, av[i]); + ERROR("error while getting realpath of %dth widget: %s", i+1, av[i]); return 1; } av[i] = wpath; @@ -105,68 +110,29 @@ int main(int ac, char **av) return 0; } -static struct wgt *wgt_at_workdir() -{ - int rc, wfd; - struct wgt *wgt; - - wfd = workdirfd(); - if (wfd < 0) - return NULL; - - wgt = wgt_create(); - if (!wgt) { - syslog(LOG_ERR, "failed to allocate wgt"); - close(wfd); - return NULL; - } - - rc = wgt_connectat(wgt, wfd, NULL); - if (rc) { - syslog(LOG_ERR, "failed to connect wgt to workdir"); - close(wfd); - wgt_unref(wgt); - return NULL; - } - - return wgt; -} - - static int check_and_show() { - struct wgt *wgt; struct wgt_info *ifo; - wgt = wgt_at_workdir(); - if (!wgt) - return -1; - - ifo = wgt_info_get(wgt, 1, 1, 1); - if (!ifo) { - wgt_unref(wgt); + ifo = wgt_info_createat(workdirfd, NULL, 1, 1, 1); + if (!ifo) return -1; - } wgt_info_dump(ifo, 1, ""); wgt_info_unref(ifo); - wgt_unref(wgt); return 0; } /* install the widget of the file */ static void show(const char *wgtfile) { - notice("-- INFO for widget %s --", wgtfile); + NOTICE("-- INFO for widget %s --", wgtfile); /* workdir */ - if (make_workdir_base("/tmp", "UNPACK", 0)) { - syslog(LOG_ERR, "failed to create a working directory"); + if (make_workdir("/tmp", "UNPACK", 0)) { + ERROR("failed to create a working directory"); return; } - if (enter_workdir(0)) - goto error2; - if (zread(wgtfile, 0)) goto error2;