[Midnightbsd-cvs] src [12122] trunk/usr.sbin/mport/mport.c: add initial support for configuring settings
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sun Nov 25 15:39:51 EST 2018
Revision: 12122
http://svnweb.midnightbsd.org/src/?rev=12122
Author: laffer1
Date: 2018-11-25 15:39:51 -0500 (Sun, 25 Nov 2018)
Log Message:
-----------
add initial support for configuring settings
Modified Paths:
--------------
trunk/usr.sbin/mport/mport.c
Modified: trunk/usr.sbin/mport/mport.c
===================================================================
--- trunk/usr.sbin/mport/mport.c 2018-11-25 20:19:41 UTC (rev 12121)
+++ trunk/usr.sbin/mport/mport.c 2018-11-25 20:39:51 UTC (rev 12122)
@@ -46,6 +46,8 @@
static int install_depends(mportInstance *, const char *, const char *);
static int install(mportInstance *, const char *);
static int cpeList(mportInstance *);
+static int configGet(mportInstance *, const char *);
+static int configSet(mportInstance *, const char *, const char *);
static int delete(const char *);
static int deleteAll(mportInstance *);
static int download(mportInstance *, const char *);
@@ -202,13 +204,29 @@
});
} else if (!strcmp(argv[1], "stats")) {
dispatch_group_async(grp, q, ^{
- loadIndex(mport);
- resultCode = stats(mport);
+ loadIndex(mport);
+ resultCode = stats(mport);
});
} else if (!strcmp(argv[1], "clean")) {
dispatch_group_async(grp, q, ^{
- resultCode = clean(mport);
+ resultCode = clean(mport);
});
+ } else if (!strcmp(argv[1], "config")) {
+ if (argc < 3) {
+ mport_instance_free(mport);
+ usage();
+ }
+
+ if (!strcmp(argv[2], "get")) {
+ dispatch_group_async(grp, q, ^{
+ resultCode = configGet(mport, argv[3]);
+ });
+ } else if (!strcmp(argv[2], "set")) {
+ dispatch_group_async(grp, q, ^{
+ resultCode = configSet(mport,
+ argv[3], argv[4]);
+ });
+ }
} else if (!strcmp(argv[1], "cpe")) {
dispatch_group_async(grp, q, ^{
resultCode = cpeList(mport);
@@ -270,6 +288,8 @@
fprintf(stderr,
"usage: mport <command> args:\n"
" mport clean\n"
+ " mport config get [setting name]\n"
+ " mport config set [setting name] [setting val]\n"
" mport cpe\n"
" mport delete [package name]\n"
" mport deleteall\n"
@@ -662,6 +682,31 @@
return (0);
}
+int configGet(mportInstance *mport, const char *settingName) {
+ char *val;
+
+ val = mport_setting_get(mport, settingName);
+
+ if (val != NULL) {
+ printf("Setting %s value is %s\n", settingName, val);
+ } else {
+ printf("Setting %s is undefined.\n", settingName);
+ }
+
+ return 0;
+}
+
+int configSet(mportInstance *mport, const char *settingName, const char *val) {
+ int result = mport_setting_set(mport, settingName, val);
+
+ if (result != MPORT_OK) {
+ warnx("%s", mport_err_string());
+ return mport_err_code();
+ }
+
+ return 0;
+}
+
int
cpeList(mportInstance *mport) {
mportPackageMeta **packs;
More information about the Midnightbsd-cvs
mailing list