diff options
author | Matthew D Fleming <mdf@FreeBSD.org> | 2011-01-19 23:00:25 +0000 |
---|---|---|
committer | Matthew D Fleming <mdf@FreeBSD.org> | 2011-01-19 23:00:25 +0000 |
commit | cbc134ad031141038704bc18476f02541e972cc4 (patch) | |
tree | 018d5bd56f39f833a692fc5bf63ac3aa9faf2d3b /lib/libjail | |
parent | 2634879bbb91bba1cb6f70033ae935eabb067ff5 (diff) | |
download | src-test2-cbc134ad031141038704bc18476f02541e972cc4.tar.gz src-test2-cbc134ad031141038704bc18476f02541e972cc4.zip |
Introduce signed and unsigned version of CTLTYPE_QUAD, renaming
existing uses. Rename sysctl_handle_quad() to sysctl_handle_64().
Notes
Notes:
svn path=/head/; revision=217616
Diffstat (limited to 'lib/libjail')
-rw-r--r-- | lib/libjail/jail.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/libjail/jail.c b/lib/libjail/jail.c index 99bd9709462e..69386e5118b6 100644 --- a/lib/libjail/jail.c +++ b/lib/libjail/jail.c @@ -381,10 +381,14 @@ jailparam_import(struct jailparam *jp, const char *value) ((unsigned long *)jp->jp_value)[i] = strtoul(avalue, &ep, 10); goto integer_test; - case CTLTYPE_QUAD: + case CTLTYPE_S64: ((int64_t *)jp->jp_value)[i] = strtoimax(avalue, &ep, 10); goto integer_test; + case CTLTYPE_U64: + ((uint64_t *)jp->jp_value)[i] = + strtoumax(avalue, &ep, 10); + goto integer_test; case CTLTYPE_STRUCT: tvalue = alloca(fw + 1); strlcpy(tvalue, avalue, fw + 1); @@ -768,10 +772,14 @@ jailparam_export(struct jailparam *jp) snprintf(valbuf, sizeof(valbuf), "%lu", ((unsigned long *)jp->jp_value)[i]); break; - case CTLTYPE_QUAD: + case CTLTYPE_S64: snprintf(valbuf, sizeof(valbuf), "%jd", (intmax_t)((int64_t *)jp->jp_value)[i]); break; + case CTLTYPE_U64: + snprintf(valbuf, sizeof(valbuf), "%ju", + (uintmax_t)((uint64_t *)jp->jp_value)[i]); + break; case CTLTYPE_STRUCT: switch (jp->jp_structtype) { case JPS_IN_ADDR: @@ -941,7 +949,8 @@ jailparam_type(struct jailparam *jp) case CTLTYPE_ULONG: jp->jp_valuelen = sizeof(long); break; - case CTLTYPE_QUAD: + case CTLTYPE_S64: + case CTLTYPE_U64: jp->jp_valuelen = sizeof(int64_t); break; case CTLTYPE_STRING: |