lib/libfido2/src/u2f.c
421
struct cbor_pair kv[3];
lib/libfido2/src/u2f.c
425
memset(&kv, 0, sizeof(kv));
lib/libfido2/src/u2f.c
433
if ((kv[0].key = cbor_build_string("alg")) == NULL ||
lib/libfido2/src/u2f.c
434
(kv[0].value = cbor_build_negint8(alg_cbor)) == NULL ||
lib/libfido2/src/u2f.c
435
!cbor_map_add(item, kv[0])) {
lib/libfido2/src/u2f.c
440
if ((kv[1].key = cbor_build_string("sig")) == NULL ||
lib/libfido2/src/u2f.c
441
(kv[1].value = fido_blob_encode(sig)) == NULL ||
lib/libfido2/src/u2f.c
442
!cbor_map_add(item, kv[1])) {
lib/libfido2/src/u2f.c
447
if ((kv[2].key = cbor_build_string("x5c")) == NULL ||
lib/libfido2/src/u2f.c
448
(kv[2].value = cbor_new_definite_array(1)) == NULL ||
lib/libfido2/src/u2f.c
450
!cbor_array_push(kv[2].value, x5c_cbor) ||
lib/libfido2/src/u2f.c
451
!cbor_map_add(item, kv[2])) {
lib/libfido2/src/u2f.c
469
for (size_t i = 0; i < nitems(kv); i++) {
lib/libfido2/src/u2f.c
470
if (kv[i].key)
lib/libfido2/src/u2f.c
471
cbor_decref(&kv[i].key);
lib/libfido2/src/u2f.c
472
if (kv[i].value)
lib/libfido2/src/u2f.c
473
cbor_decref(&kv[i].value);
regress/lib/libc/asr/bin/common.c
55
struct kv kv_family[] = {
regress/lib/libc/asr/bin/common.c
61
struct kv kv_socktype[] = {
regress/lib/libc/asr/bin/common.c
68
struct kv kv_protocol[] = {
regress/lib/libc/asr/bin/common.c
77
kv_lookup_name(struct kv *kv, int code, char *buf, size_t sz)
regress/lib/libc/asr/bin/common.c
79
while (kv->name) {
regress/lib/libc/asr/bin/common.c
80
if (kv->code == code)
regress/lib/libc/asr/bin/common.c
81
return (kv->name);
regress/lib/libc/asr/bin/common.c
82
kv++;
sys/dev/kstat.c
673
kstat_kv_init(struct kstat_kv *kv, const char *name, enum kstat_kv_type type)
sys/dev/kstat.c
675
memset(kv, 0, sizeof(*kv));
sys/dev/kstat.c
676
strlcpy(kv->kv_key, name, sizeof(kv->kv_key)); /* XXX truncated? */
sys/dev/kstat.c
677
kv->kv_type = type;
sys/dev/kstat.c
678
kv->kv_unit = KSTAT_KV_U_NONE;
sys/dev/kstat.c
682
kstat_kv_unit_init(struct kstat_kv *kv, const char *name,
sys/dev/kstat.c
700
memset(kv, 0, sizeof(*kv));
sys/dev/kstat.c
701
strlcpy(kv->kv_key, name, sizeof(kv->kv_key)); /* XXX truncated? */
sys/dev/kstat.c
702
kv->kv_type = type;
sys/dev/kstat.c
703
kv->kv_unit = unit;
sys/dev/pci/drm/amd/pm/legacy-dpm/si_dpm.c
1877
s64 kt, kv, leakage_w, i_leakage, vddc;
sys/dev/pci/drm/amd/pm/legacy-dpm/si_dpm.c
1894
kv = drm_fixp_mul(av, drm_fixp_exp(drm_fixp_mul(bv, vddc)));
sys/dev/pci/drm/amd/pm/legacy-dpm/si_dpm.c
1896
leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc);
sys/dev/pci/drm/amd/pm/legacy-dpm/si_dpm.c
1915
s64 kt, kv, leakage_w, i_leakage, vddc;
sys/dev/pci/drm/amd/pm/legacy-dpm/si_dpm.c
1921
kv = drm_fixp_mul(div64_s64(drm_int2fixp(coeff->av), 100000000),
sys/dev/pci/drm/amd/pm/legacy-dpm/si_dpm.c
1924
leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc);
sys/dev/pci/drm/radeon/ni_dpm.c
745
s64 kt, kv, leakage_w, i_leakage, vddc, temperature;
sys/dev/pci/drm/radeon/ni_dpm.c
753
kv = drm_fixp_mul(div64_s64(drm_int2fixp(coeff->av), 1000),
sys/dev/pci/drm/radeon/ni_dpm.c
756
leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc);
sys/dev/pci/drm/radeon/si_dpm.c
1709
s64 kt, kv, leakage_w, i_leakage, vddc;
sys/dev/pci/drm/radeon/si_dpm.c
1726
kv = drm_fixp_mul(av, drm_fixp_exp(drm_fixp_mul(bv, vddc)));
sys/dev/pci/drm/radeon/si_dpm.c
1728
leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc);
sys/dev/pci/drm/radeon/si_dpm.c
1747
s64 kt, kv, leakage_w, i_leakage, vddc;
sys/dev/pci/drm/radeon/si_dpm.c
1753
kv = drm_fixp_mul(div64_s64(drm_int2fixp(coeff->av), 100000000),
sys/dev/pci/drm/radeon/si_dpm.c
1756
leakage_w = drm_fixp_mul(drm_fixp_mul(drm_fixp_mul(i_leakage, kt), kv), vddc);
sys/kern/subr_pool.c
1651
struct kmem_va_mode kv = kv_intrsafe;
sys/kern/subr_pool.c
1657
kv.kv_align = pp->pr_pgsize;
sys/kern/subr_pool.c
1663
v = km_alloc(pp->pr_pgsize, &kv, pp->pr_crange, &kd);
sys/kern/subr_pool.c
1672
struct kmem_va_mode kv = kv_intrsafe;
sys/kern/subr_pool.c
1676
kv.kv_align = pp->pr_pgsize;
sys/kern/subr_pool.c
1679
km_free(v, pp->pr_pgsize, &kv, pp->pr_crange);
sys/kern/subr_pool.c
1686
struct kmem_va_mode kv = kv_any;
sys/kern/subr_pool.c
1691
kv.kv_align = pp->pr_pgsize;
sys/kern/subr_pool.c
1697
v = km_alloc(pp->pr_pgsize, &kv, pp->pr_crange, &kd);
sys/kern/subr_pool.c
1706
struct kmem_va_mode kv = kv_any;
sys/kern/subr_pool.c
1709
kv.kv_align = pp->pr_pgsize;
sys/kern/subr_pool.c
1712
km_free(v, pp->pr_pgsize, &kv, pp->pr_crange);
sys/uvm/uvm_km.c
528
km_alloc(size_t sz, const struct kmem_va_mode *kv,
sys/uvm/uvm_km.c
555
if (pla_align < kv->kv_align)
sys/uvm/uvm_km.c
556
pla_align = kv->kv_align;
sys/uvm/uvm_km.c
573
if (kv->kv_singlepage || kp->kp_maxseg == 1) {
sys/uvm/uvm_km.c
588
KASSERT(!kv->kv_singlepage);
sys/uvm/uvm_km.c
593
if (kv->kv_singlepage) {
sys/uvm/uvm_km.c
626
map = *kv->kv_map;
sys/uvm/uvm_km.c
629
kv->kv_align, UVM_MAPFLAG(prot, prot, MAP_INHERIT_NONE,
sys/uvm/uvm_km.c
631
if (kv->kv_wait && kd->kd_waitok) {
sys/uvm/uvm_km.c
654
km_free(void *v, size_t sz, const struct kmem_va_mode *kv,
sys/uvm/uvm_km.c
668
if (kv->kv_singlepage || kp->kp_maxseg == 1) {
sys/uvm/uvm_km.c
678
if (kv->kv_singlepage) {
sys/uvm/uvm_km.c
713
uvm_unmap(*kv->kv_map, sva, eva);
sys/uvm/uvm_km.c
714
if (kv->kv_wait)
sys/uvm/uvm_km.c
715
wakeup(*kv->kv_map);
usr.bin/kstat/kstat.c
387
const struct kstat_kv *kv;
usr.bin/kstat/kstat.c
393
if (len < (ssize_t)sizeof(*kv)) {
usr.bin/kstat/kstat.c
394
warn("short kv (len %zu < size %zu)", len, sizeof(*kv));
usr.bin/kstat/kstat.c
400
kv = (const struct kstat_kv *)buf;
usr.bin/kstat/kstat.c
402
buf += sizeof(*kv);
usr.bin/kstat/kstat.c
403
len -= sizeof(*kv);
usr.bin/kstat/kstat.c
408
printf("%16.16s: ", kv->kv_key);
usr.bin/kstat/kstat.c
410
switch (kv->kv_type) {
usr.bin/kstat/kstat.c
415
printf("%s", kstat_kv_bool(kv) ? "true" : "false");
usr.bin/kstat/kstat.c
419
printf("%" PRIu64, kstat_kv_u64(kv));
usr.bin/kstat/kstat.c
422
printf("%" PRId64, kstat_kv_s64(kv));
usr.bin/kstat/kstat.c
426
printf("%" PRIu32, kstat_kv_u32(kv));
usr.bin/kstat/kstat.c
429
printf("%" PRId32, kstat_kv_s32(kv));
usr.bin/kstat/kstat.c
433
printf("%" PRIu16, kstat_kv_u16(kv));
usr.bin/kstat/kstat.c
436
printf("%" PRId16, kstat_kv_s16(kv));
usr.bin/kstat/kstat.c
439
blen = kstat_kv_len(kv);
usr.bin/kstat/kstat.c
443
blen = kstat_kv_len(kv);
usr.bin/kstat/kstat.c
450
strdump(kstat_kv_istr(kv), sizeof(kstat_kv_istr(kv)));
usr.bin/kstat/kstat.c
454
f = kstat_kv_temp(kv);
usr.bin/kstat/kstat.c
459
fmt_thing(&fr, kstat_kv_freq(kv), 1000);
usr.bin/kstat/kstat.c
467
f = kstat_kv_volts(kv);
usr.bin/kstat/kstat.c
472
f = kstat_kv_volts(kv);
usr.bin/kstat/kstat.c
477
f = kstat_kv_amps(kv);
usr.bin/kstat/kstat.c
482
f = kstat_kv_watts(kv);
usr.bin/kstat/kstat.c
487
printf("unknown type %u, stopping\n", kv->kv_type);
usr.bin/kstat/kstat.c
491
switch (kv->kv_unit) {
usr.bin/kstat/kstat.c
505
printf(" unit-type-%u", kv->kv_unit);
usr.bin/kstat/kstat.c
521
} while (len >= (ssize_t)sizeof(*kv));
usr.bin/openssl/req.c
128
static int duplicated(LHASH_OF(OPENSSL_STRING) *addexts, char *kv);
usr.bin/openssl/req.c
1845
duplicated(LHASH_OF(OPENSSL_STRING) *addexts, char *kv)
usr.bin/openssl/req.c
1852
while (*kv && isspace(*kv))
usr.bin/openssl/req.c
1853
if (*++kv == '\0')
usr.bin/openssl/req.c
1855
if ((p = strchr(kv, '=')) == NULL)
usr.bin/openssl/req.c
1857
off = p - kv;
usr.bin/openssl/req.c
1858
if ((kv = strdup(kv)) == NULL)
usr.bin/openssl/req.c
1862
for (p = kv + off; p > kv; --p)
usr.bin/openssl/req.c
1865
if (p == kv) {
usr.bin/openssl/req.c
1866
free(kv);
usr.bin/openssl/req.c
1872
if ((p = (char *)lh_OPENSSL_STRING_insert(addexts, (OPENSSL_STRING*)kv))
usr.bin/openssl/req.c
1874
free(p != NULL ? p : kv);
usr.bin/pkgconf/libpkgconf/libpkgconf.h
398
PKGCONF_API void pkgconf_tuple_define_global(pkgconf_client_t *client, const char *kv);
usr.bin/pkgconf/libpkgconf/tuple.c
119
pkgconf_tuple_define_global(pkgconf_client_t *client, const char *kv)
usr.bin/pkgconf/libpkgconf/tuple.c
121
char *workbuf = strdup(kv);
usr.bin/pkgconf/libpkgconf/tuple.c
335
char *kv, *parsekv;
usr.bin/pkgconf/libpkgconf/tuple.c
362
kv = pkgconf_tuple_find_global(client, varname);
usr.bin/pkgconf/libpkgconf/tuple.c
363
if (kv != NULL)
usr.bin/pkgconf/libpkgconf/tuple.c
365
size_t nlen = pkgconf_strlcpy(bptr, kv, remain);
usr.bin/pkgconf/libpkgconf/tuple.c
378
kv = pkgconf_tuple_find(client, vars, varname);
usr.bin/pkgconf/libpkgconf/tuple.c
380
if (kv != NULL)
usr.bin/pkgconf/libpkgconf/tuple.c
384
parsekv = pkgconf_tuple_parse(client, vars, kv, flags);
usr.bin/sort/coll.c
113
struct key_value *kv;
usr.bin/sort/coll.c
115
kv = &(ka->key[ind]);
usr.bin/sort/coll.c
117
if (kv->k != s)
usr.bin/sort/coll.c
118
bwsfree(kv->k);
usr.bin/sort/coll.c
119
kv->k = s;
usr.bin/sort/coll.c
148
struct key_value *kv;
usr.bin/sort/coll.c
150
kv = &(si->ka.key[i]);
usr.bin/sort/coll.c
152
if (kv->k != si->str)
usr.bin/sort/coll.c
153
ret += bws_memsize(kv->k);
usr.bin/tcpbench/tcpbench.c
304
char **kv;
usr.bin/tcpbench/tcpbench.c
311
for (kv = ptb->kvars; ptb->kvars != NULL && *kv != NULL; kv++)
usr.bin/tcpbench/tcpbench.c
312
printf("%s%s", kv != ptb->kvars ? "," : "", *kv);
usr.sbin/amd/amd/mapc.c
116
typedef struct kv kv;
usr.sbin/amd/amd/mapc.c
118
kv *next;
usr.sbin/amd/amd/mapc.c
134
kv *kvhash[NKVHASH]; /* Cached data */
usr.sbin/amd/amd/mapc.c
240
kv **h;
usr.sbin/amd/amd/mapc.c
241
kv *n;
usr.sbin/amd/amd/mapc.c
278
n = ALLOC(kv);
usr.sbin/amd/amd/mapc.c
288
kv *k;
usr.sbin/amd/amd/mapc.c
460
kv *k = m->kvhash[i];
usr.sbin/amd/amd/mapc.c
462
kv *n = k->next;
usr.sbin/amd/amd/mapc.c
535
kv *k = 0;
usr.sbin/amd/amd/mapc.c
751
kv *k = m->kvhash[i];
usr.sbin/httpd/http.h
232
struct kv http_pathquery;
usr.sbin/httpd/http.h
233
struct kv http_matchquery;
usr.sbin/httpd/http.h
253
struct kv *http_lastheader;
usr.sbin/httpd/httpd.c
1002
free(kv->kv_key);
usr.sbin/httpd/httpd.c
1003
kv->kv_key = key;
usr.sbin/httpd/httpd.c
1009
kv_delete(struct kvtree *keys, struct kv *kv)
usr.sbin/httpd/httpd.c
1011
struct kv *ckv;
usr.sbin/httpd/httpd.c
1013
RB_REMOVE(kvtree, keys, kv);
usr.sbin/httpd/httpd.c
1016
while ((ckv = TAILQ_FIRST(&kv->kv_children)) != NULL) {
usr.sbin/httpd/httpd.c
1017
TAILQ_REMOVE(&kv->kv_children, ckv, kv_entry);
usr.sbin/httpd/httpd.c
1022
kv_free(kv);
usr.sbin/httpd/httpd.c
1023
free(kv);
usr.sbin/httpd/httpd.c
1026
struct kv *
usr.sbin/httpd/httpd.c
1027
kv_extend(struct kvtree *keys, struct kv *kv, char *value)
usr.sbin/httpd/httpd.c
1031
if (kv == NULL) {
usr.sbin/httpd/httpd.c
1033
} else if (kv->kv_value != NULL) {
usr.sbin/httpd/httpd.c
1034
if (asprintf(&newvalue, "%s%s", kv->kv_value, value) == -1)
usr.sbin/httpd/httpd.c
1037
free(kv->kv_value);
usr.sbin/httpd/httpd.c
1038
kv->kv_value = newvalue;
usr.sbin/httpd/httpd.c
1039
} else if ((kv->kv_value = strdup(value)) == NULL)
usr.sbin/httpd/httpd.c
1042
return (kv);
usr.sbin/httpd/httpd.c
1048
struct kv *kv;
usr.sbin/httpd/httpd.c
1050
while ((kv = RB_MIN(kvtree, keys)) != NULL)
usr.sbin/httpd/httpd.c
1051
kv_delete(keys, kv);
usr.sbin/httpd/httpd.c
1055
kv_free(struct kv *kv)
usr.sbin/httpd/httpd.c
1057
free(kv->kv_key);
usr.sbin/httpd/httpd.c
1058
kv->kv_key = NULL;
usr.sbin/httpd/httpd.c
1059
free(kv->kv_value);
usr.sbin/httpd/httpd.c
1060
kv->kv_value = NULL;
usr.sbin/httpd/httpd.c
1061
memset(kv, 0, sizeof(*kv));
usr.sbin/httpd/httpd.c
1064
struct kv *
usr.sbin/httpd/httpd.c
1065
kv_find(struct kvtree *keys, struct kv *kv)
usr.sbin/httpd/httpd.c
1067
return (RB_FIND(kvtree, keys, kv));
usr.sbin/httpd/httpd.c
1071
kv_cmp(struct kv *a, struct kv *b)
usr.sbin/httpd/httpd.c
1076
RB_GENERATE(kvtree, kv, kv_node, kv_cmp);
usr.sbin/httpd/httpd.c
932
struct kv *
usr.sbin/httpd/httpd.c
935
struct kv *kv, *oldkv;
usr.sbin/httpd/httpd.c
939
if ((kv = calloc(1, sizeof(*kv))) == NULL)
usr.sbin/httpd/httpd.c
941
if ((kv->kv_key = strdup(key)) == NULL) {
usr.sbin/httpd/httpd.c
942
free(kv);
usr.sbin/httpd/httpd.c
946
(kv->kv_value = strdup(value)) == NULL) {
usr.sbin/httpd/httpd.c
947
free(kv->kv_key);
usr.sbin/httpd/httpd.c
948
free(kv);
usr.sbin/httpd/httpd.c
951
TAILQ_INIT(&kv->kv_children);
usr.sbin/httpd/httpd.c
953
if ((oldkv = RB_INSERT(kvtree, keys, kv)) != NULL) {
usr.sbin/httpd/httpd.c
954
TAILQ_INSERT_TAIL(&oldkv->kv_children, kv, kv_entry);
usr.sbin/httpd/httpd.c
955
kv->kv_parent = oldkv;
usr.sbin/httpd/httpd.c
958
return (kv);
usr.sbin/httpd/httpd.c
962
kv_set(struct kv *kv, char *fmt, ...)
usr.sbin/httpd/httpd.c
966
struct kv *ckv;
usr.sbin/httpd/httpd.c
976
while ((ckv = TAILQ_FIRST(&kv->kv_children)) != NULL) {
usr.sbin/httpd/httpd.c
977
TAILQ_REMOVE(&kv->kv_children, ckv, kv_entry);
usr.sbin/httpd/httpd.c
983
free(kv->kv_value);
usr.sbin/httpd/httpd.c
984
kv->kv_value = value;
usr.sbin/httpd/httpd.c
990
kv_setkey(struct kv *kv, char *fmt, ...)
usr.sbin/httpd/httpd.h
126
TAILQ_HEAD(kvlist, kv);
usr.sbin/httpd/httpd.h
127
RB_HEAD(kvtree, kv);
usr.sbin/httpd/httpd.h
134
struct kv *kv_parent;
usr.sbin/httpd/httpd.h
135
TAILQ_ENTRY(kv) kv_entry;
usr.sbin/httpd/httpd.h
137
RB_ENTRY(kv) kv_node;
usr.sbin/httpd/httpd.h
684
int server_writeheader_http(struct client *clt, struct kv *, void *);
usr.sbin/httpd/httpd.h
686
int (*)(struct client *, struct kv *, void *), void *);
usr.sbin/httpd/httpd.h
731
struct kv *kv_add(struct kvtree *, char *, char *);
usr.sbin/httpd/httpd.h
732
int kv_set(struct kv *, char *, ...)
usr.sbin/httpd/httpd.h
734
int kv_setkey(struct kv *, char *, ...)
usr.sbin/httpd/httpd.h
736
void kv_delete(struct kvtree *, struct kv *);
usr.sbin/httpd/httpd.h
737
struct kv *kv_extend(struct kvtree *, struct kv *, char *);
usr.sbin/httpd/httpd.h
739
void kv_free(struct kv *);
usr.sbin/httpd/httpd.h
740
struct kv *kv_find(struct kvtree *, struct kv *);
usr.sbin/httpd/httpd.h
741
int kv_cmp(struct kv *, struct kv *);
usr.sbin/httpd/httpd.h
752
RB_PROTOTYPE(kvtree, kv, kv_node, kv_cmp);
usr.sbin/httpd/server_fcgi.c
649
struct kv *cl, key;
usr.sbin/httpd/server_fcgi.c
744
server_fcgi_writeheader(struct client *clt, struct kv *hdr, void *arg)
usr.sbin/httpd/server_fcgi.c
83
int server_fcgi_writeheader(struct client *, struct kv *, void *);
usr.sbin/httpd/server_file.c
66
struct kv *r, key;
usr.sbin/httpd/server_file.c
719
struct kv key, *since;
usr.sbin/httpd/server_http.c
1295
struct kv *kv, key, *host;
usr.sbin/httpd/server_http.c
130
struct kv *ba, key;
usr.sbin/httpd/server_http.c
1329
if ((kv = kv_find(&desc->http_headers, &key)) != NULL &&
usr.sbin/httpd/server_http.c
1330
strcasecmp("close", kv->kv_value) == 0)
usr.sbin/httpd/server_http.c
1337
if ((kv = kv_find(&desc->http_headers, &key)) != NULL &&
usr.sbin/httpd/server_http.c
1338
strcasecmp("keep-alive", kv->kv_value) == 0)
usr.sbin/httpd/server_http.c
1571
struct kv *ct, *cl;
usr.sbin/httpd/server_http.c
1674
server_writeheader_http(struct client *clt, struct kv *hdr, void *arg)
usr.sbin/httpd/server_http.c
1700
int (*hdr_cb)(struct client *, struct kv *, void *), void *arg)
usr.sbin/httpd/server_http.c
1702
struct kv *hdr, *kv;
usr.sbin/httpd/server_http.c
1708
TAILQ_FOREACH(kv, &hdr->kv_children, kv_entry) {
usr.sbin/httpd/server_http.c
1709
if ((hdr_cb)(clt, kv, arg) == -1)
usr.sbin/httpd/server_http.c
1854
struct kv key, *agent, *referrer, *xff, *xfp;
usr.sbin/httpd/server_http.c
229
struct kv *hdr = NULL;
usr.sbin/relayd/config.c
771
memset(&rule->rule_kv[0], 0, sizeof(struct kv));
usr.sbin/relayd/http.h
233
struct kv http_pathquery;
usr.sbin/relayd/http.h
234
struct kv http_matchquery;
usr.sbin/relayd/http.h
252
struct kv *http_lastheader;
usr.sbin/relayd/relay.c
122
struct kv *kv = NULL;
usr.sbin/relayd/relay.c
178
kv = &rule->rule_kv[i];
usr.sbin/relayd/relay.c
179
if (kv->kv_type != i)
usr.sbin/relayd/relay.c
182
switch (kv->kv_type) {
usr.sbin/relayd/relay.c
202
switch (kv->kv_option) {
usr.sbin/relayd/relay.c
225
switch (kv->kv_digest) {
usr.sbin/relayd/relay.c
234
int kvv = (kv->kv_option == KEY_OPTION_STRIP ||
usr.sbin/relayd/relay.c
235
kv->kv_value == NULL);
usr.sbin/relayd/relay.c
237
kv->kv_key == NULL ? "" : "\"",
usr.sbin/relayd/relay.c
238
kv->kv_key == NULL ? "" : kv->kv_key,
usr.sbin/relayd/relay.c
239
kv->kv_key == NULL ? "" : "\"",
usr.sbin/relayd/relay.c
241
kv->kv_value == NULL ? "" : kv->kv_value,
usr.sbin/relayd/relay_http.c
1018
if (fnmatch(kv->kv_key, tmpkey, 0) != FNM_NOMATCH &&
usr.sbin/relayd/relay_http.c
1019
(kv->kv_value == NULL || fnmatch(kv->kv_value, tmpval, 0)
usr.sbin/relayd/relay_http.c
1180
struct kv *host, key;
usr.sbin/relayd/relay_http.c
1291
relay_writeheader_kv(struct ctl_relay_event *dst, struct kv *hdr)
usr.sbin/relayd/relay_http.c
1322
struct kv *hdr, *kv;
usr.sbin/relayd/relay_http.c
1328
TAILQ_FOREACH(kv, &hdr->kv_children, kv_entry) {
usr.sbin/relayd/relay_http.c
1329
if (relay_writeheader_kv(dst, kv) == -1)
usr.sbin/relayd/relay_http.c
1412
struct kv *match = &desc->http_matchquery;
usr.sbin/relayd/relay_http.c
1413
struct kv *kv = &rule->rule_kv[KEY_TYPE_QUERY];
usr.sbin/relayd/relay_http.c
1416
if (cre->dir == RELAY_DIR_RESPONSE || kv->kv_type != KEY_TYPE_QUERY)
usr.sbin/relayd/relay_http.c
1418
else if (kv->kv_key == NULL)
usr.sbin/relayd/relay_http.c
1420
else if ((res = relay_lookup_query(cre, kv)) != 0)
usr.sbin/relayd/relay_http.c
1423
relay_match(actions, kv, match, NULL);
usr.sbin/relayd/relay_http.c
1433
struct kv *kv = &rule->rule_kv[KEY_TYPE_HEADER];
usr.sbin/relayd/relay_http.c
1434
struct kv *match;
usr.sbin/relayd/relay_http.c
1436
if (kv->kv_type != KEY_TYPE_HEADER)
usr.sbin/relayd/relay_http.c
1439
match = kv_find(&desc->http_headers, kv);
usr.sbin/relayd/relay_http.c
1441
if (kv->kv_option == KEY_OPTION_APPEND ||
usr.sbin/relayd/relay_http.c
1442
kv->kv_option == KEY_OPTION_SET) {
usr.sbin/relayd/relay_http.c
1448
if (fnmatch(kv->kv_key, match->kv_key,
usr.sbin/relayd/relay_http.c
1451
if (kv->kv_value != NULL &&
usr.sbin/relayd/relay_http.c
1453
fnmatch(kv->kv_value, match->kv_value, 0) == FNM_NOMATCH)
usr.sbin/relayd/relay_http.c
1457
relay_match(actions, kv, match, &desc->http_headers);
usr.sbin/relayd/relay_http.c
1467
struct kv *kv = &rule->rule_kv[KEY_TYPE_PATH];
usr.sbin/relayd/relay_http.c
1468
struct kv *match = &desc->http_pathquery;
usr.sbin/relayd/relay_http.c
1471
if (cre->dir == RELAY_DIR_RESPONSE || kv->kv_type != KEY_TYPE_PATH)
usr.sbin/relayd/relay_http.c
1473
else if (kv->kv_option != KEY_OPTION_STRIP) {
usr.sbin/relayd/relay_http.c
1474
if (kv->kv_key == NULL)
usr.sbin/relayd/relay_http.c
1476
else if (fnmatch(kv->kv_key, desc->http_path, 0) == FNM_NOMATCH)
usr.sbin/relayd/relay_http.c
1478
else if (kv->kv_value != NULL && kv->kv_option == KEY_OPTION_NONE) {
usr.sbin/relayd/relay_http.c
1480
if (fnmatch(kv->kv_value, query, FNM_CASEFOLD) == FNM_NOMATCH)
usr.sbin/relayd/relay_http.c
1485
relay_match(actions, kv, match, NULL);
usr.sbin/relayd/relay_http.c
1495
struct kv *host, key;
usr.sbin/relayd/relay_http.c
1496
struct kv *kv = &rule->rule_kv[KEY_TYPE_URL];
usr.sbin/relayd/relay_http.c
1497
struct kv *match = &desc->http_pathquery;
usr.sbin/relayd/relay_http.c
1500
if (cre->dir == RELAY_DIR_RESPONSE || kv->kv_type != KEY_TYPE_URL ||
usr.sbin/relayd/relay_http.c
1501
kv->kv_key == NULL)
usr.sbin/relayd/relay_http.c
1510
kv->kv_option == KEY_OPTION_LOG &&
usr.sbin/relayd/relay_http.c
1511
fnmatch(kv->kv_key, match->kv_key, FNM_CASEFOLD) != FNM_NOMATCH) {
usr.sbin/relayd/relay_http.c
1513
} else if ((res = relay_lookup_url(cre, host->kv_value, kv)) != 0)
usr.sbin/relayd/relay_http.c
1515
relay_match(actions, kv, match, NULL);
usr.sbin/relayd/relay_http.c
1525
struct kv *kv = &rule->rule_kv[KEY_TYPE_COOKIE], key;
usr.sbin/relayd/relay_http.c
1526
struct kv *match = NULL;
usr.sbin/relayd/relay_http.c
1529
if (kv->kv_type != KEY_TYPE_COOKIE)
usr.sbin/relayd/relay_http.c
1545
if (kv->kv_option == KEY_OPTION_APPEND ||
usr.sbin/relayd/relay_http.c
1546
kv->kv_option == KEY_OPTION_SET) {
usr.sbin/relayd/relay_http.c
1552
if (kv->kv_key == NULL || match->kv_value == NULL)
usr.sbin/relayd/relay_http.c
1555
kv)) != 0)
usr.sbin/relayd/relay_http.c
1559
relay_match(actions, kv, match, &desc->http_headers);
usr.sbin/relayd/relay_http.c
1569
struct kv *kv;
usr.sbin/relayd/relay_http.c
1591
TAILQ_FOREACH(kv, matches, kv_match_entry) {
usr.sbin/relayd/relay_http.c
1592
TAILQ_INSERT_TAIL(actions, kv, kv_action_entry);
usr.sbin/relayd/relay_http.c
1605
struct kv *host = NULL;
usr.sbin/relayd/relay_http.c
1607
struct kv *kv, *match, *kp, *mp, kvcopy, matchcopy, key;
usr.sbin/relayd/relay_http.c
1618
TAILQ_FOREACH(kv, actions, kv_action_entry) {
usr.sbin/relayd/relay_http.c
1620
match = kv->kv_match;
usr.sbin/relayd/relay_http.c
1630
switch (kv->kv_option) {
usr.sbin/relayd/relay_http.c
1633
switch (kv->kv_type) {
usr.sbin/relayd/relay_http.c
1635
if (kv->kv_option == KEY_OPTION_APPEND) {
usr.sbin/relayd/relay_http.c
1637
match->kv_key, kv->kv_key) == -1)
usr.sbin/relayd/relay_http.c
1641
kv->kv_value) == -1)
usr.sbin/relayd/relay_http.c
1647
if (kv_inherit(kp, kv) == NULL)
usr.sbin/relayd/relay_http.c
1663
kv->kv_option == KEY_OPTION_SET) {
usr.sbin/relayd/relay_http.c
1665
kv->kv_value) == -1)
usr.sbin/relayd/relay_http.c
1676
switch (kv->kv_type) {
usr.sbin/relayd/relay_http.c
1683
if (kv->kv_matchtree != NULL)
usr.sbin/relayd/relay_http.c
1687
match = kv->kv_match = NULL;
usr.sbin/relayd/relay_http.c
1695
switch (kv->kv_type) {
usr.sbin/relayd/relay_http.c
1710
nstrip = strtonum(kv->kv_value, 0, INT_MAX, NULL);
usr.sbin/relayd/relay_http.c
1711
if (kv->kv_type == KEY_TYPE_PATH) {
usr.sbin/relayd/relay_http.c
1725
kp = kv;
usr.sbin/relayd/relay_http.c
1726
if (addkv && kv->kv_matchtree != NULL) {
usr.sbin/relayd/relay_http.c
1728
if ((match = kv_add(kv->kv_matchtree, kp->kv_key,
usr.sbin/relayd/relay_http.c
1733
kv->kv_match = match;
usr.sbin/relayd/relay_http.c
1745
switch (kv->kv_option) {
usr.sbin/relayd/relay_http.c
1757
switch (kv->kv_type) {
usr.sbin/relayd/relay_http.c
1761
switch (kv->kv_digest) {
usr.sbin/relayd/relay_http.c
1772
if (kv_setkey(mp, "%s", kv->kv_key)
usr.sbin/relayd/relay_http.c
1790
kv->kv_match = NULL;
usr.sbin/relayd/relay_http.c
1791
kv->kv_matchtree = NULL;
usr.sbin/relayd/relay_http.c
1792
TAILQ_REMOVE(actions, kv, kv_match_entry);
usr.sbin/relayd/relay_http.c
1847
struct kv *kv;
usr.sbin/relayd/relay_http.c
1906
TAILQ_FOREACH(kv, &matches, kv_match_entry) {
usr.sbin/relayd/relay_http.c
1908
kv, kv_rule_entry);
usr.sbin/relayd/relay_http.c
195
struct kv *hdr = NULL;
usr.sbin/relayd/relay_http.c
196
struct kv *upgrade = NULL, *upgrade_ws = NULL;
usr.sbin/relayd/relay_http.c
197
struct kv *connection_close = NULL;
usr.sbin/relayd/relay_http.c
1983
relay_match(struct kvlist *actions, struct kv *kv, struct kv *match,
usr.sbin/relayd/relay_http.c
1986
if (kv->kv_option != KEY_OPTION_NONE) {
usr.sbin/relayd/relay_http.c
1987
kv->kv_match = match;
usr.sbin/relayd/relay_http.c
1988
kv->kv_matchtree = matchtree;
usr.sbin/relayd/relay_http.c
1989
TAILQ_INSERT_TAIL(actions, kv, kv_match_entry);
usr.sbin/relayd/relay_http.c
45
char *, struct kv *);
usr.sbin/relayd/relay_http.c
47
const char *, struct kv *);
usr.sbin/relayd/relay_http.c
48
int relay_lookup_query(struct ctl_relay_event *, struct kv *);
usr.sbin/relayd/relay_http.c
50
struct kv *);
usr.sbin/relayd/relay_http.c
55
int relay_writeheader_kv(struct ctl_relay_event *, struct kv *);
usr.sbin/relayd/relay_http.c
818
char *query, struct kv *kv)
usr.sbin/relayd/relay_http.c
833
switch (kv->kv_digest) {
usr.sbin/relayd/relay_http.c
836
if ((md = digeststr(kv->kv_digest,
usr.sbin/relayd/relay_http.c
850
str, kv->kv_key, strcasecmp(kv->kv_key, str));
usr.sbin/relayd/relay_http.c
852
if (strcasecmp(kv->kv_key, str) == 0) {
usr.sbin/relayd/relay_http.c
865
relay_lookup_url(struct ctl_relay_event *cre, const char *host, struct kv *kv)
usr.sbin/relayd/relay_http.c
911
pp, desc->http_query, kv)) != RES_PASS)
usr.sbin/relayd/relay_http.c
916
pp, NULL, kv)) != RES_PASS)
usr.sbin/relayd/relay_http.c
928
pp, NULL, kv)) != RES_PASS)
usr.sbin/relayd/relay_http.c
942
struct kv *kv)
usr.sbin/relayd/relay_http.c
975
__func__, key, value, kv->kv_key, kv->kv_value,
usr.sbin/relayd/relay_http.c
976
strcasecmp(kv->kv_key, key));
usr.sbin/relayd/relay_http.c
978
if (strcasecmp(kv->kv_key, key) == 0 &&
usr.sbin/relayd/relay_http.c
979
((kv->kv_value == NULL) ||
usr.sbin/relayd/relay_http.c
980
(fnmatch(kv->kv_value, value,
usr.sbin/relayd/relay_http.c
995
relay_lookup_query(struct ctl_relay_event *cre, struct kv *kv)
usr.sbin/relayd/relay_http.c
998
struct kv *match = &desc->http_matchquery;
usr.sbin/relayd/relayd.c
630
struct kv *
usr.sbin/relayd/relayd.c
633
struct kv *kv, *oldkv;
usr.sbin/relayd/relayd.c
637
if ((kv = calloc(1, sizeof(*kv))) == NULL)
usr.sbin/relayd/relayd.c
639
if ((kv->kv_key = strdup(key)) == NULL)
usr.sbin/relayd/relayd.c
642
(kv->kv_value = strdup(value)) == NULL)
usr.sbin/relayd/relayd.c
644
TAILQ_INIT(&kv->kv_children);
usr.sbin/relayd/relayd.c
646
if ((oldkv = RB_INSERT(kvtree, keys, kv)) != NULL) {
usr.sbin/relayd/relayd.c
653
TAILQ_INSERT_TAIL(&oldkv->kv_children, kv, kv_entry);
usr.sbin/relayd/relayd.c
654
kv->kv_parent = oldkv;
usr.sbin/relayd/relayd.c
657
return (kv);
usr.sbin/relayd/relayd.c
659
free(kv->kv_key);
usr.sbin/relayd/relayd.c
660
free(kv->kv_value);
usr.sbin/relayd/relayd.c
661
free(kv);
usr.sbin/relayd/relayd.c
666
kv_set(struct kv *kv, char *fmt, ...)
usr.sbin/relayd/relayd.c
670
struct kv *ckv;
usr.sbin/relayd/relayd.c
680
while ((ckv = TAILQ_FIRST(&kv->kv_children)) != NULL) {
usr.sbin/relayd/relayd.c
681
TAILQ_REMOVE(&kv->kv_children, ckv, kv_entry);
usr.sbin/relayd/relayd.c
687
free(kv->kv_value);
usr.sbin/relayd/relayd.c
688
kv->kv_value = value;
usr.sbin/relayd/relayd.c
694
kv_setkey(struct kv *kv, char *fmt, ...)
usr.sbin/relayd/relayd.c
706
free(kv->kv_key);
usr.sbin/relayd/relayd.c
707
kv->kv_key = key;
usr.sbin/relayd/relayd.c
713
kv_delete(struct kvtree *keys, struct kv *kv)
usr.sbin/relayd/relayd.c
715
struct kv *ckv;
usr.sbin/relayd/relayd.c
717
RB_REMOVE(kvtree, keys, kv);
usr.sbin/relayd/relayd.c
720
while ((ckv = TAILQ_FIRST(&kv->kv_children)) != NULL) {
usr.sbin/relayd/relayd.c
721
TAILQ_REMOVE(&kv->kv_children, ckv, kv_entry);
usr.sbin/relayd/relayd.c
726
kv_free(kv);
usr.sbin/relayd/relayd.c
727
free(kv);
usr.sbin/relayd/relayd.c
730
struct kv *
usr.sbin/relayd/relayd.c
731
kv_extend(struct kvtree *keys, struct kv *kv, char *value)
usr.sbin/relayd/relayd.c
735
if (kv == NULL) {
usr.sbin/relayd/relayd.c
737
} else if (kv->kv_value != NULL) {
usr.sbin/relayd/relayd.c
738
if (asprintf(&newvalue, "%s%s", kv->kv_value, value) == -1)
usr.sbin/relayd/relayd.c
741
free(kv->kv_value);
usr.sbin/relayd/relayd.c
742
kv->kv_value = newvalue;
usr.sbin/relayd/relayd.c
743
} else if ((kv->kv_value = strdup(value)) == NULL)
usr.sbin/relayd/relayd.c
746
return (kv);
usr.sbin/relayd/relayd.c
752
struct kv *kv;
usr.sbin/relayd/relayd.c
754
while ((kv = RB_MIN(kvtree, keys)) != NULL)
usr.sbin/relayd/relayd.c
755
kv_delete(keys, kv);
usr.sbin/relayd/relayd.c
759
kv_free(struct kv *kv)
usr.sbin/relayd/relayd.c
766
free(kv->kv_key);
usr.sbin/relayd/relayd.c
767
free(kv->kv_value);
usr.sbin/relayd/relayd.c
768
memset(kv, 0, sizeof(*kv));
usr.sbin/relayd/relayd.c
771
struct kv *
usr.sbin/relayd/relayd.c
772
kv_inherit(struct kv *dst, struct kv *src)
usr.sbin/relayd/relayd.c
800
kv_log(struct rsession *con, struct kv *kv, u_int16_t labelid,
usr.sbin/relayd/relayd.c
811
kv->kv_key == NULL ? "(unknown)" : kv->kv_key,
usr.sbin/relayd/relayd.c
812
kv->kv_value == NULL ? "" : ": ",
usr.sbin/relayd/relayd.c
813
kv->kv_value == NULL ? "" : kv->kv_value,
usr.sbin/relayd/relayd.c
825
struct kv *
usr.sbin/relayd/relayd.c
826
kv_find(struct kvtree *keys, struct kv *kv)
usr.sbin/relayd/relayd.c
828
struct kv *match;
usr.sbin/relayd/relayd.c
831
if (kv->kv_flags & KV_FLAG_GLOBBING) {
usr.sbin/relayd/relayd.c
833
key = kv->kv_key == NULL ? "" : kv->kv_key;
usr.sbin/relayd/relayd.c
840
match = RB_FIND(kvtree, keys, kv);
usr.sbin/relayd/relayd.c
846
struct kv *
usr.sbin/relayd/relayd.c
850
struct kv *match, kv;
usr.sbin/relayd/relayd.c
854
kv.kv_key = key;
usr.sbin/relayd/relayd.c
855
if ((match = RB_FIND(kvtree, keys, &kv)) == NULL)
usr.sbin/relayd/relayd.c
889
kv_cmp(struct kv *a, struct kv *b)
usr.sbin/relayd/relayd.c
894
RB_GENERATE(kvtree, kv, kv_node, kv_cmp);
usr.sbin/relayd/relayd.c
900
struct kv *kv = NULL;
usr.sbin/relayd/relayd.c
907
kv = &rule->rule_kv[i];
usr.sbin/relayd/relayd.c
908
if (kv->kv_type != i)
usr.sbin/relayd/relayd.c
911
switch (kv->kv_option) {
usr.sbin/relayd/relayd.c
914
if (kv->kv_key == NULL && rulefile == NULL &&
usr.sbin/relayd/relayd.c
915
(kv->kv_key = strdup("*")) == NULL)
usr.sbin/relayd/relayd.c
922
switch (kv->kv_type) {
usr.sbin/relayd/relayd.c
933
if (kv->kv_value != NULL && strchr(kv->kv_value, '$') != NULL)
usr.sbin/relayd/relayd.c
934
kv->kv_flags |= KV_FLAG_MACRO;
usr.sbin/relayd/relayd.c
935
if (kv->kv_key != NULL && strpbrk(kv->kv_key, "*?[") != NULL)
usr.sbin/relayd/relayd.c
936
kv->kv_flags |= KV_FLAG_GLOBBING;
usr.sbin/relayd/relayd.c
957
kv = &r->rule_kv[i];
usr.sbin/relayd/relayd.c
958
if (kv->kv_type != i)
usr.sbin/relayd/relayd.c
960
free(kv->kv_key);
usr.sbin/relayd/relayd.c
961
if ((kv->kv_key = strdup(buf)) == NULL) {
usr.sbin/relayd/relayd.c
986
struct kv *kv;
usr.sbin/relayd/relayd.c
993
kv = &rule->rule_kv[i];
usr.sbin/relayd/relayd.c
994
if (kv->kv_type != i)
usr.sbin/relayd/relayd.c
996
if (kv_inherit(&r->rule_kv[i], kv) == NULL) {
usr.sbin/relayd/relayd.h
1245
void relay_match(struct kvlist *, struct kv *, struct kv *,
usr.sbin/relayd/relayd.h
1349
struct kv *kv_add(struct kvtree *, char *, char *, int);
usr.sbin/relayd/relayd.h
1350
int kv_set(struct kv *, char *, ...)
usr.sbin/relayd/relayd.h
1352
int kv_setkey(struct kv *, char *, ...)
usr.sbin/relayd/relayd.h
1354
void kv_delete(struct kvtree *, struct kv *);
usr.sbin/relayd/relayd.h
1355
struct kv *kv_extend(struct kvtree *, struct kv *, char *);
usr.sbin/relayd/relayd.h
1357
void kv_free(struct kv *);
usr.sbin/relayd/relayd.h
1358
struct kv *kv_inherit(struct kv *, struct kv *);
usr.sbin/relayd/relayd.h
1360
int kv_log(struct rsession *, struct kv *, u_int16_t,
usr.sbin/relayd/relayd.h
1362
struct kv *kv_find(struct kvtree *, struct kv *);
usr.sbin/relayd/relayd.h
1363
struct kv *kv_find_value(struct kvtree *, char *, const char *,
usr.sbin/relayd/relayd.h
1365
int kv_cmp(struct kv *, struct kv *);
usr.sbin/relayd/relayd.h
1373
RB_PROTOTYPE(kvtree, kv, kv_node, kv_cmp);
usr.sbin/relayd/relayd.h
323
TAILQ_HEAD(kvlist, kv);
usr.sbin/relayd/relayd.h
324
RB_HEAD(kvtree, kv);
usr.sbin/relayd/relayd.h
340
struct kv *kv_parent;
usr.sbin/relayd/relayd.h
341
TAILQ_ENTRY(kv) kv_entry;
usr.sbin/relayd/relayd.h
343
RB_ENTRY(kv) kv_node;
usr.sbin/relayd/relayd.h
346
struct kv *kv_match;
usr.sbin/relayd/relayd.h
349
TAILQ_ENTRY(kv) kv_match_entry;
usr.sbin/relayd/relayd.h
350
TAILQ_ENTRY(kv) kv_rule_entry;
usr.sbin/relayd/relayd.h
351
TAILQ_ENTRY(kv) kv_action_entry;
usr.sbin/relayd/relayd.h
677
struct kv rule_kv[KEY_TYPE_MAX];
usr.sbin/smtpd/smtpctl.c
821
struct stat_kv kv;
usr.sbin/smtpd/smtpctl.c
824
memset(&kv, 0, sizeof kv);
usr.sbin/smtpd/smtpctl.c
827
srv_send(IMSG_CTL_GET_STATS, &kv, sizeof kv);
usr.sbin/smtpd/smtpctl.c
829
srv_read(&kv, sizeof(kv));
usr.sbin/smtpd/smtpctl.c
832
if (kv.iter == NULL)
usr.sbin/smtpd/smtpctl.c
835
if (strcmp(kv.key, "uptime") == 0) {
usr.sbin/smtpd/smtpctl.c
836
duration = time(NULL) - kv.val.u.counter;
usr.sbin/smtpd/smtpctl.c
842
switch (kv.val.type) {
usr.sbin/smtpd/smtpctl.c
845
kv.key, kv.val.u.counter);
usr.sbin/smtpd/smtpctl.c
849
kv.key, (int64_t)kv.val.u.timestamp);
usr.sbin/smtpd/smtpctl.c
853
kv.key, (long long)kv.val.u.tv.tv_sec,
usr.sbin/smtpd/smtpctl.c
854
(long long)kv.val.u.tv.tv_usec);
usr.sbin/smtpd/smtpctl.c
858
kv.key,
usr.sbin/smtpd/smtpctl.c
859
(long long)kv.val.u.ts.tv_sec * 1000000 +
usr.sbin/smtpd/smtpctl.c
860
kv.val.u.ts.tv_nsec / 1000000,
usr.sbin/smtpd/smtpctl.c
861
kv.val.u.ts.tv_nsec % 1000000);