Code Review
/
src
/
app-framework-main.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
afm-user-daemon: Update to binder changes for bindings v3
[src/app-framework-main.git]
/
src
/
wgtpkg-info.c
diff --git
a/src/wgtpkg-info.c
b/src/wgtpkg-info.c
index
1a7724b
..
4849de7
100644
(file)
--- a/
src/wgtpkg-info.c
+++ b/
src/wgtpkg-info.c
@@
-1,5
+1,7
@@
/*
/*
- Copyright 2015 IoT.bzh
+ Copyright (C) 2015-2018 IoT.bzh
+
+ author: José Bollo <jose.bollo@iot.bzh>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
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.
*/
limitations under the License.
*/
-#define _BSD_SOURCE /* see readdir */
-
#include <stdlib.h>
#include <stdio.h>
#include <dirent.h>
#include <unistd.h>
#include <limits.h>
#include <errno.h>
#include <stdlib.h>
#include <stdio.h>
#include <dirent.h>
#include <unistd.h>
#include <limits.h>
#include <errno.h>
-#include <syslog.h>
#include <getopt.h>
#include <getopt.h>
+#include <libxml/tree.h>
+
#include "verbose.h"
#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"
#include "wgt.h"
#include "wgt-info.h"
@@
-34,13
+39,28
@@
static const char appname[] = "wgtpkg-info";
static void show(const char *wgtfile);
static void show(const char *wgtfile);
+static void version()
+{
+ printf(
+ "\n"
+ " %s version="AFM_VERSION"\n"
+ "\n"
+ " Copyright (C) 2015, 2016, 2017 \"IoT.bzh\"\n"
+ " AFB comes with ABSOLUTELY NO WARRANTY.\n"
+ " Licence Apache 2\n"
+ "\n",
+ appname
+ );
+}
+
static void usage()
{
printf(
static void usage()
{
printf(
- "usage: %s [-
f] [-
q] [-v] wgtfile...\n"
+ "usage: %s [-q] [-v] wgtfile...\n"
"\n"
" -q quiet\n"
" -v verbose\n"
"\n"
" -q quiet\n"
" -v verbose\n"
+ " -V version\n"
"\n",
appname
);
"\n",
appname
);
@@
-50,6
+70,7
@@
static struct option options[] = {
{ "help", no_argument, NULL, 'h' },
{ "quiet", no_argument, NULL, 'q' },
{ "verbose", no_argument, NULL, 'v' },
{ "help", no_argument, NULL, 'h' },
{ "quiet", no_argument, NULL, 'q' },
{ "verbose", no_argument, NULL, 'v' },
+ { "version", no_argument, NULL, 'V' },
{ NULL, 0, NULL, 0 }
};
{ NULL, 0, NULL, 0 }
};
@@
-59,12
+80,12
@@
int main(int ac, char **av)
int i;
char *wpath;
int i;
char *wpath;
-
openlog(appname, LOG_PERROR, LOG_USER
);
+
LOGUSER(appname
);
xmlsec_init();
for (;;) {
xmlsec_init();
for (;;) {
- i = getopt_long(ac, av, "hqv", options, NULL);
+ i = getopt_long(ac, av, "hqv
V
", options, NULL);
if (i < 0)
break;
switch (i) {
if (i < 0)
break;
switch (i) {
@@
-78,11
+99,14
@@
int main(int ac, char **av)
case 'v':
verbosity++;
break;
case 'v':
verbosity++;
break;
+ case 'V':
+ version();
+ return 0;
case ':':
case ':':
-
syslog(LOG_ERR,
"missing argument value");
+
ERROR(
"missing argument value");
return 1;
default:
return 1;
default:
-
syslog(LOG_ERR,
"unrecognized option");
+
ERROR(
"unrecognized option");
return 1;
}
}
return 1;
}
}
@@
-92,7
+116,7
@@
int main(int ac, char **av)
for (i = 0 ; av[i] != NULL ; i++) {
wpath = realpath(av[i], NULL);
if (wpath == NULL) {
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;
return 1;
}
av[i] = wpath;
@@
-105,68
+129,29
@@
int main(int ac, char **av)
return 0;
}
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()
{
static int check_and_show()
{
- struct wgt *wgt;
struct wgt_info *ifo;
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;
return -1;
- }
wgt_info_dump(ifo, 1, "");
wgt_info_unref(ifo);
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)
{
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 */
/* 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;
}
return;
}
- if (enter_workdir(0))
- goto error2;
-
if (zread(wgtfile, 0))
goto error2;
if (zread(wgtfile, 0))
goto error2;