games/hack/hack.mkshop.c
246
i = sq(dist2(sx,sy,doors[sh].x,doors[sh].y));
games/hack/hack.mkshop.c
81
static int sq(int);
games/monop/houses.c
137
pp = mp->sq[i]->desc;
games/monop/houses.c
140
printf("%s (H):\n", mp->sq[i]->name);
games/monop/houses.c
146
mp->sq[i]->name, pp->houses);
games/monop/houses.c
191
mp->sq[i]->desc->houses = temp[i];
games/monop/houses.c
259
pp = mp->sq[i]->desc;
games/monop/houses.c
262
printf("%s (0):\n", mp->sq[i]->name);
games/monop/houses.c
268
mp->sq[i]->name,pp->houses);
games/monop/houses.c
271
mp->sq[i]->name);
games/monop/houses.c
294
mp->sq[i]->desc->houses = temp[i];
games/monop/houses.c
306
sqp = mp->sq[i];
games/monop/houses.c
355
if (mp->sq[i]->desc->houses < 4)
games/monop/misc.c
244
mp->sq[i]->desc->monop = TRUE;
games/monop/misc.c
257
mp->sq[i]->desc->monop = FALSE;
games/monop/monop.c
167
mp->sq[i] = &board[(int)mp->sqnums[i]];
games/monop/monop.h
92
SQUARE *sq[3]; /* list of squares in monop */
games/sail/dr_1.c
105
sendbp(sp, sq, crew[0]*100+crew[1]*10,
games/sail/dr_1.c
113
sendbp(sp, sq, crew[0]*100+crew[1]*10,
games/sail/dr_1.c
120
sendbp(sp, sq, crew[0]*100+crew[1]*10+crew[2],
games/sail/dr_1.c
236
struct ship *sp, *sq;
games/sail/dr_1.c
241
for (sq = sp + 1; sq < ls; sq++)
games/sail/dr_1.c
242
if (sq->file->dir && meleeing(sp, sq) && meleeing(sq, sp))
games/sail/dr_1.c
243
(void) fightitout(sp, sq, 0);
games/sail/dr_1.c
245
foreachship(sq) {
games/sail/dr_1.c
246
if (sq->file->dir && meleeing(sq, sp))
games/sail/dr_1.c
247
thwart = fightitout(sp, sq, 1);
games/sail/dr_1.c
252
foreachship(sq) {
games/sail/dr_1.c
253
if (sq->file->dir && meleeing(sq, sp))
games/sail/dr_1.c
254
unboard(sq, sp, 0);
games/sail/dr_1.c
255
unboard(sp, sq, 0);
games/sail/dr_1.c
68
struct ship *sp, *sq;
games/sail/dr_1.c
82
foreachship(sq) {
games/sail/dr_1.c
83
if (!Xsnagged2(sp, sq))
games/sail/dr_1.c
85
if (meleeing(sp, sq))
games/sail/dr_1.c
87
if (!sq->file->dir
games/sail/dr_1.c
88
|| sp->nationality == capship(sq)->nationality)
games/sail/dr_1.c
90
switch (sp->specs->class - sq->specs->class) {
games/sail/dr_1.c
94
sendbp(sp, sq, crew[0]*100, 0);
games/sail/dr_1.c
98
sendbp(sp, sq, crew[1]*10, 0);
games/sail/dr_2.c
45
struct ship *sp, *sq;
games/sail/dr_2.c
51
foreachship(sq) {
games/sail/dr_2.c
52
friendly = sp->nationality == capship(sq)->nationality;
games/sail/dr_2.c
56
if (range(sp, sq) != 1)
games/sail/dr_2.c
58
if (grappled2(sp, sq)) {
games/sail/dr_2.c
59
if (is_toughmelee(sp, sq, 0, 0))
games/sail/dr_2.c
60
ungrap(sp, sq);
games/sail/dr_2.c
62
grap(sp, sq);
games/sail/dr_2.c
63
} else if (couldwin(sp, sq)) {
games/sail/dr_2.c
64
grap(sp, sq);
games/sail/dr_2.c
68
ungrap(sp, sq);
games/sail/dr_2.c
76
struct ship *sp, *sq;
games/sail/dr_2.c
91
foreachship(sq)
games/sail/dr_2.c
92
cleansnag(sp, sq, 1);
games/sail/dr_2.c
95
foreachship(sq) {
games/sail/dr_2.c
96
if (sp != sq && sq->file->dir && range(sp, sq) < 4)
games/sail/dr_2.c
97
table(RIGGING, L_EXPLODE, sp->specs->guns/13, sq, sp, 6);
games/sail/dr_3.c
121
foreachship(sq) {
games/sail/dr_3.c
124
if (sp == sq)
games/sail/dr_3.c
126
if (sq->file->dir == 0)
games/sail/dr_3.c
128
if (!push(sp, sq))
games/sail/dr_3.c
130
if (snagged2(sp, sq) && range(sp, sq) > 1)
games/sail/dr_3.c
132
if (!range(sp, sq) && !fouled2(sp, sq)) {
games/sail/dr_3.c
133
makesignal(sp, "collision with $$", sq);
games/sail/dr_3.c
136
sq);
games/sail/dr_3.c
138
Write(W_FOUL, sq, n, 0, 0, 0);
games/sail/dr_3.c
144
sq->file->movebuf[k + 1] = 0;
games/sail/dr_3.c
145
sq->file->row = sp->file->row - 1;
games/sail/dr_3.c
148
sq->file->col =
games/sail/dr_3.c
151
sq->file->col = sp->file->col;
games/sail/dr_3.c
152
sq->file->dir = sp->file->dir;
games/sail/dr_3.c
44
struct ship *sp, *sq; /* r11, r10 */
regress/lib/libc/cephes/ieee.c
4052
unsigned short temp[NI], num[NI], sq[NI], xx[NI];
regress/lib/libc/cephes/ieee.c
4105
ecleaz( sq );
regress/lib/libc/cephes/ieee.c
4125
eshup1( sq );
regress/lib/libc/cephes/ieee.c
4128
temp[k] = sq[k];
regress/lib/libc/cephes/ieee.c
4135
sq[NI-2] |= 1;
regress/lib/libc/cephes/ieee.c
4151
emdnorm( sq, k, 0, exp, 64 );
regress/lib/libc/cephes/ieee.c
4152
emovo( sq, y );
sbin/unwind/libunbound/services/outside_network.c
100
static void serviced_callbacks(struct serviced_query* sq, int error,
sbin/unwind/libunbound/services/outside_network.c
1021
if(outnet->dtenv && pend_tcp && w && w->sq &&
sbin/unwind/libunbound/services/outside_network.c
1026
dt_msg_send_outside_query(outnet->dtenv, &w->sq->addr,
sbin/unwind/libunbound/services/outside_network.c
1027
&pend_tcp->pi->addr, comm_tcp, NULL, w->sq->zone,
sbin/unwind/libunbound/services/outside_network.c
1028
w->sq->zonelen, &tmp);
sbin/unwind/libunbound/services/outside_network.c
1462
log_assert(!pend->sq->busy);
sbin/unwind/libunbound/services/outside_network.c
1463
pend->sq->busy = 1;
sbin/unwind/libunbound/services/outside_network.c
1474
pend->sq->busy = 0;
sbin/unwind/libunbound/services/outside_network.c
1838
struct serviced_query* sq = (struct serviced_query*)node;
sbin/unwind/libunbound/services/outside_network.c
1839
alloc_reg_release(sq->alloc, sq->region);
sbin/unwind/libunbound/services/outside_network.c
1840
if(sq->timer)
sbin/unwind/libunbound/services/outside_network.c
1841
comm_timer_delete(sq->timer);
sbin/unwind/libunbound/services/outside_network.c
1842
free(sq);
sbin/unwind/libunbound/services/outside_network.c
2218
struct outside_network* outnet = pend->sq->outnet;
sbin/unwind/libunbound/services/outside_network.c
2267
pend->sq->zone, pend->sq->zonelen, packet);
sbin/unwind/libunbound/services/outside_network.c
2274
pending_udp_query(struct serviced_query* sq, struct sldns_buffer* packet,
sbin/unwind/libunbound/services/outside_network.c
2279
pend->outnet = sq->outnet;
sbin/unwind/libunbound/services/outside_network.c
2280
pend->sq = sq;
sbin/unwind/libunbound/services/outside_network.c
2281
pend->addrlen = sq->addrlen;
sbin/unwind/libunbound/services/outside_network.c
2282
memmove(&pend->addr, &sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
2286
pend->timer = comm_timer_create(sq->outnet->base, pending_udp_timer_cb,
sbin/unwind/libunbound/services/outside_network.c
2293
if(sq->outnet->unused_fds == NULL) {
sbin/unwind/libunbound/services/outside_network.c
2306
if(sq->outnet->udp_wait_last)
sbin/unwind/libunbound/services/outside_network.c
2307
sq->outnet->udp_wait_last->next_waiting = pend;
sbin/unwind/libunbound/services/outside_network.c
2309
sq->outnet->udp_wait_first = pend;
sbin/unwind/libunbound/services/outside_network.c
2310
sq->outnet->udp_wait_last = pend;
sbin/unwind/libunbound/services/outside_network.c
2313
log_assert(!sq->busy);
sbin/unwind/libunbound/services/outside_network.c
2314
sq->busy = 1;
sbin/unwind/libunbound/services/outside_network.c
2316
pending_delete(sq->outnet, pend);
sbin/unwind/libunbound/services/outside_network.c
2319
sq->busy = 0;
sbin/unwind/libunbound/services/outside_network.c
2434
pending_tcp_query(struct serviced_query* sq, sldns_buffer* packet,
sbin/unwind/libunbound/services/outside_network.c
2437
struct pending_tcp* pend = sq->outnet->tcp_free;
sbin/unwind/libunbound/services/outside_network.c
2449
reuse = reuse_tcp_find(sq->outnet, &sq->addr, sq->addrlen,
sbin/unwind/libunbound/services/outside_network.c
2450
sq->ssl_upstream);
sbin/unwind/libunbound/services/outside_network.c
2455
reuse_tcp_lru_touch(sq->outnet, reuse);
sbin/unwind/libunbound/services/outside_network.c
2464
reuse_tcp_close_oldest(sq->outnet);
sbin/unwind/libunbound/services/outside_network.c
2465
pend = sq->outnet->tcp_free;
sbin/unwind/libunbound/services/outside_network.c
2475
if(!(w->timer = comm_timer_create(sq->outnet->base, outnet_tcptimer, w))) {
sbin/unwind/libunbound/services/outside_network.c
2482
w->id = tcp_select_id(sq->outnet, reuse);
sbin/unwind/libunbound/services/outside_network.c
2484
memcpy(&w->addr, &sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
2485
w->addrlen = sq->addrlen;
sbin/unwind/libunbound/services/outside_network.c
2486
w->outnet = sq->outnet;
sbin/unwind/libunbound/services/outside_network.c
2491
w->ssl_upstream = sq->ssl_upstream;
sbin/unwind/libunbound/services/outside_network.c
2492
w->tls_auth_name = sq->tls_auth_name;
sbin/unwind/libunbound/services/outside_network.c
2500
w->sq = NULL;
sbin/unwind/libunbound/services/outside_network.c
2531
memcpy(&pend->reuse.addr, &sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
2532
pend->reuse.addrlen = sq->addrlen;
sbin/unwind/libunbound/services/outside_network.c
2539
if(sq->outnet->dtenv &&
sbin/unwind/libunbound/services/outside_network.c
2540
(sq->outnet->dtenv->log_resolver_query_messages ||
sbin/unwind/libunbound/services/outside_network.c
2541
sq->outnet->dtenv->log_forwarder_query_messages)) {
sbin/unwind/libunbound/services/outside_network.c
2545
dt_msg_send_outside_query(sq->outnet->dtenv, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
2546
&pend->pi->addr, comm_tcp, NULL, sq->zone,
sbin/unwind/libunbound/services/outside_network.c
2547
sq->zonelen, &tmp);
sbin/unwind/libunbound/services/outside_network.c
2556
w->sq = sq;
sbin/unwind/libunbound/services/outside_network.c
2558
outnet_waiting_tcp_list_add(sq->outnet, w, 1);
sbin/unwind/libunbound/services/outside_network.c
2602
struct serviced_query* sq = (struct serviced_query*)arg;
sbin/unwind/libunbound/services/outside_network.c
2603
struct outside_network* outnet = sq->outnet;
sbin/unwind/libunbound/services/outside_network.c
2607
if(!sq->cblist)
sbin/unwind/libunbound/services/outside_network.c
2610
if(outnet->do_udp && !(sq->tcp_upstream || sq->ssl_upstream)) {
sbin/unwind/libunbound/services/outside_network.c
2611
if(!serviced_udp_send(sq, outnet->udp_buff))
sbin/unwind/libunbound/services/outside_network.c
2614
if(!serviced_tcp_send(sq, outnet->udp_buff))
sbin/unwind/libunbound/services/outside_network.c
2622
serviced_callbacks(sq, NETEVENT_CLOSED, NULL, NULL);
sbin/unwind/libunbound/services/outside_network.c
2634
struct serviced_query* sq = (struct serviced_query*)malloc(sizeof(*sq));
sbin/unwind/libunbound/services/outside_network.c
2639
if(!sq) {
sbin/unwind/libunbound/services/outside_network.c
2643
sq->node.key = sq;
sbin/unwind/libunbound/services/outside_network.c
2644
sq->alloc = alloc;
sbin/unwind/libunbound/services/outside_network.c
2645
sq->region = region;
sbin/unwind/libunbound/services/outside_network.c
2646
sq->qbuf = regional_alloc_init(region, sldns_buffer_begin(buff),
sbin/unwind/libunbound/services/outside_network.c
2648
if(!sq->qbuf) {
sbin/unwind/libunbound/services/outside_network.c
2650
free(sq);
sbin/unwind/libunbound/services/outside_network.c
2653
sq->qbuflen = sldns_buffer_limit(buff);
sbin/unwind/libunbound/services/outside_network.c
2654
sq->zone = regional_alloc_init(region, zone, zonelen);
sbin/unwind/libunbound/services/outside_network.c
2655
if(!sq->zone) {
sbin/unwind/libunbound/services/outside_network.c
2657
free(sq);
sbin/unwind/libunbound/services/outside_network.c
2660
sq->zonelen = zonelen;
sbin/unwind/libunbound/services/outside_network.c
2661
sq->qtype = qtype;
sbin/unwind/libunbound/services/outside_network.c
2662
sq->dnssec = dnssec;
sbin/unwind/libunbound/services/outside_network.c
2663
sq->want_dnssec = want_dnssec;
sbin/unwind/libunbound/services/outside_network.c
2664
sq->nocaps = nocaps;
sbin/unwind/libunbound/services/outside_network.c
2665
sq->tcp_upstream = tcp_upstream;
sbin/unwind/libunbound/services/outside_network.c
2666
sq->ssl_upstream = ssl_upstream;
sbin/unwind/libunbound/services/outside_network.c
2668
sq->tls_auth_name = regional_strdup(region, tls_auth_name);
sbin/unwind/libunbound/services/outside_network.c
2669
if(!sq->tls_auth_name) {
sbin/unwind/libunbound/services/outside_network.c
2671
free(sq);
sbin/unwind/libunbound/services/outside_network.c
2675
sq->tls_auth_name = NULL;
sbin/unwind/libunbound/services/outside_network.c
2677
memcpy(&sq->addr, addr, addrlen);
sbin/unwind/libunbound/services/outside_network.c
2678
sq->addrlen = addrlen;
sbin/unwind/libunbound/services/outside_network.c
2679
sq->opt_list = opt_list;
sbin/unwind/libunbound/services/outside_network.c
2680
sq->busy = 0;
sbin/unwind/libunbound/services/outside_network.c
2681
sq->timer = comm_timer_create(outnet->base, serviced_timer_cb, sq);
sbin/unwind/libunbound/services/outside_network.c
2682
if(!sq->timer) {
sbin/unwind/libunbound/services/outside_network.c
2684
free(sq);
sbin/unwind/libunbound/services/outside_network.c
2688
comm_timer_set(sq->timer, &t);
sbin/unwind/libunbound/services/outside_network.c
2689
sq->outnet = outnet;
sbin/unwind/libunbound/services/outside_network.c
2690
sq->cblist = NULL;
sbin/unwind/libunbound/services/outside_network.c
2691
sq->pending = NULL;
sbin/unwind/libunbound/services/outside_network.c
2692
sq->status = serviced_initial;
sbin/unwind/libunbound/services/outside_network.c
2693
sq->retry = 0;
sbin/unwind/libunbound/services/outside_network.c
2694
sq->to_be_deleted = 0;
sbin/unwind/libunbound/services/outside_network.c
2695
sq->padding_block_size = pad_queries_block_size;
sbin/unwind/libunbound/services/outside_network.c
2701
rbtree_insert(outnet->serviced, &sq->node);
sbin/unwind/libunbound/services/outside_network.c
2703
return sq;
sbin/unwind/libunbound/services/outside_network.c
2710
struct serviced_query* sq)
sbin/unwind/libunbound/services/outside_network.c
2735
if(pend_tcp->c->fd != -1 && sq->outnet->tcp_reuse.count <
sbin/unwind/libunbound/services/outside_network.c
2736
sq->outnet->tcp_reuse_max) {
sbin/unwind/libunbound/services/outside_network.c
2739
if(!reuse_tcp_insert(sq->outnet, pend_tcp)) {
sbin/unwind/libunbound/services/outside_network.c
2742
reuse_tcp_setup_timeout(pend_tcp, sq->outnet->tcp_reuse_timeout);
sbin/unwind/libunbound/services/outside_network.c
2750
serviced_delete(struct serviced_query* sq)
sbin/unwind/libunbound/services/outside_network.c
2753
if(sq->pending) {
sbin/unwind/libunbound/services/outside_network.c
2755
if(sq->status == serviced_query_UDP_EDNS ||
sbin/unwind/libunbound/services/outside_network.c
2756
sq->status == serviced_query_UDP ||
sbin/unwind/libunbound/services/outside_network.c
2757
sq->status == serviced_query_UDP_EDNS_FRAG ||
sbin/unwind/libunbound/services/outside_network.c
2758
sq->status == serviced_query_UDP_EDNS_fallback) {
sbin/unwind/libunbound/services/outside_network.c
2759
struct pending* p = (struct pending*)sq->pending;
sbin/unwind/libunbound/services/outside_network.c
2762
portcomm_loweruse(sq->outnet, p->pc);
sbin/unwind/libunbound/services/outside_network.c
2763
pending_delete(sq->outnet, p);
sbin/unwind/libunbound/services/outside_network.c
2766
outnet_send_wait_udp(sq->outnet);
sbin/unwind/libunbound/services/outside_network.c
2769
sq->pending;
sbin/unwind/libunbound/services/outside_network.c
2791
if(!reuse_tcp_remove_serviced_keep(w, sq)) {
sbin/unwind/libunbound/services/outside_network.c
2793
reuse_cb_and_decommission(sq->outnet,
sbin/unwind/libunbound/services/outside_network.c
2795
use_free_buffer(sq->outnet);
sbin/unwind/libunbound/services/outside_network.c
2797
sq->pending = NULL;
sbin/unwind/libunbound/services/outside_network.c
2800
outnet_waiting_tcp_list_remove(sq->outnet, w);
sbin/unwind/libunbound/services/outside_network.c
2807
serviced_node_del(&sq->node, NULL);
sbin/unwind/libunbound/services/outside_network.c
2850
serviced_query_udp_size(struct serviced_query* sq, enum serviced_query_status status) {
sbin/unwind/libunbound/services/outside_network.c
2853
if(addr_is_ip6(&sq->addr, sq->addrlen)) {
sbin/unwind/libunbound/services/outside_network.c
2870
serviced_encode(struct serviced_query* sq, sldns_buffer* buff, int with_edns)
sbin/unwind/libunbound/services/outside_network.c
2873
if(sq->outnet->use_caps_for_id && !sq->nocaps) {
sbin/unwind/libunbound/services/outside_network.c
2874
serviced_perturb_qname(sq->outnet->rnd, sq->qbuf, sq->qbuflen);
sbin/unwind/libunbound/services/outside_network.c
2879
sldns_buffer_write(buff, sq->qbuf, sq->qbuflen);
sbin/unwind/libunbound/services/outside_network.c
2889
edns.opt_list_out = sq->opt_list;
sbin/unwind/libunbound/services/outside_network.c
2891
edns.udp_size = serviced_query_udp_size(sq, sq->status);
sbin/unwind/libunbound/services/outside_network.c
2893
if((sq->dnssec & EDNS_DO))
sbin/unwind/libunbound/services/outside_network.c
2895
if((sq->dnssec & BIT_CD))
sbin/unwind/libunbound/services/outside_network.c
2897
if (sq->ssl_upstream && sq->padding_block_size) {
sbin/unwind/libunbound/services/outside_network.c
2903
edns.padding_block_size = sq->padding_block_size;
sbin/unwind/libunbound/services/outside_network.c
2917
serviced_udp_send(struct serviced_query* sq, sldns_buffer* buff)
sbin/unwind/libunbound/services/outside_network.c
2921
time_t now = *sq->outnet->now_secs;
sbin/unwind/libunbound/services/outside_network.c
2923
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
sbin/unwind/libunbound/services/outside_network.c
2924
sq->zonelen, now, &vs, &edns_lame_known, &rtt))
sbin/unwind/libunbound/services/outside_network.c
2926
sq->last_rtt = rtt;
sbin/unwind/libunbound/services/outside_network.c
2928
if(sq->status == serviced_initial) {
sbin/unwind/libunbound/services/outside_network.c
2930
sq->status = serviced_query_UDP_EDNS;
sbin/unwind/libunbound/services/outside_network.c
2932
sq->status = serviced_query_UDP;
sbin/unwind/libunbound/services/outside_network.c
2935
serviced_encode(sq, buff, (sq->status == serviced_query_UDP_EDNS) ||
sbin/unwind/libunbound/services/outside_network.c
2936
(sq->status == serviced_query_UDP_EDNS_FRAG));
sbin/unwind/libunbound/services/outside_network.c
2937
sq->last_sent_time = *sq->outnet->now_tv;
sbin/unwind/libunbound/services/outside_network.c
2938
sq->edns_lame_known = (int)edns_lame_known;
sbin/unwind/libunbound/services/outside_network.c
2940
sq->pending = pending_udp_query(sq, buff, rtt,
sbin/unwind/libunbound/services/outside_network.c
2941
serviced_udp_callback, sq);
sbin/unwind/libunbound/services/outside_network.c
2942
if(!sq->pending)
sbin/unwind/libunbound/services/outside_network.c
2999
serviced_callbacks(struct serviced_query* sq, int error, struct comm_point* c,
sbin/unwind/libunbound/services/outside_network.c
3003
int dobackup = (sq->cblist && sq->cblist->next); /* >1 cb*/
sbin/unwind/libunbound/services/outside_network.c
3014
rbtree_delete(sq->outnet->serviced, sq);
sbin/unwind/libunbound/services/outside_network.c
3016
sq->to_be_deleted = 1;
sbin/unwind/libunbound/services/outside_network.c
3018
if(sq->outnet->use_caps_for_id && error == NETEVENT_NOERROR && c &&
sbin/unwind/libunbound/services/outside_network.c
3019
!sq->nocaps && sq->qtype != LDNS_RR_TYPE_PTR) {
sbin/unwind/libunbound/services/outside_network.c
3031
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3036
!serviced_check_qname(c->buffer, sq->qbuf,
sbin/unwind/libunbound/services/outside_network.c
3037
sq->qbuflen)) {
sbin/unwind/libunbound/services/outside_network.c
3040
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3059
backup_p = regional_alloc_init(sq->region,
sbin/unwind/libunbound/services/outside_network.c
3066
sq->outnet->svcd_overhead = backlen;
sbin/unwind/libunbound/services/outside_network.c
3069
while((p=sq->cblist) != NULL) {
sbin/unwind/libunbound/services/outside_network.c
3070
sq->cblist = p->next; /* remove this element */
sbin/unwind/libunbound/services/outside_network.c
3080
sq->outnet->svcd_overhead = 0;
sbin/unwind/libunbound/services/outside_network.c
3083
log_assert(sq->cblist == NULL);
sbin/unwind/libunbound/services/outside_network.c
3084
serviced_delete(sq);
sbin/unwind/libunbound/services/outside_network.c
3091
struct serviced_query* sq = (struct serviced_query*)arg;
sbin/unwind/libunbound/services/outside_network.c
3094
struct waiting_tcp* w = (struct waiting_tcp*)sq->pending;
sbin/unwind/libunbound/services/outside_network.c
3102
sq->pending = NULL; /* removed after this callback */
sbin/unwind/libunbound/services/outside_network.c
3105
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3107
infra_update_tcp_works(sq->outnet->infra, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3108
sq->addrlen, sq->zone, sq->zonelen);
sbin/unwind/libunbound/services/outside_network.c
3113
if(error==NETEVENT_NOERROR && pi && sq->outnet->dtenv &&
sbin/unwind/libunbound/services/outside_network.c
3114
(sq->outnet->dtenv->log_resolver_response_messages ||
sbin/unwind/libunbound/services/outside_network.c
3115
sq->outnet->dtenv->log_forwarder_response_messages)) {
sbin/unwind/libunbound/services/outside_network.c
3116
log_addr(VERB_ALGO, "response from upstream", &sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3118
dt_msg_send_outside_response(sq->outnet->dtenv, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3119
&pi->addr, c->type, c->ssl, sq->zone, sq->zonelen, sq->qbuf,
sbin/unwind/libunbound/services/outside_network.c
3120
sq->qbuflen, &sq->last_sent_time, sq->outnet->now_tv,
sbin/unwind/libunbound/services/outside_network.c
3124
if(error==NETEVENT_NOERROR && sq->status == serviced_query_TCP_EDNS &&
sbin/unwind/libunbound/services/outside_network.c
3129
sq->status = serviced_query_TCP_EDNS_fallback;
sbin/unwind/libunbound/services/outside_network.c
3130
serviced_tcp_initiate(sq, c->buffer);
sbin/unwind/libunbound/services/outside_network.c
3133
sq->status == serviced_query_TCP_EDNS_fallback &&
sbin/unwind/libunbound/services/outside_network.c
3142
if(!sq->want_dnssec)
sbin/unwind/libunbound/services/outside_network.c
3143
if(!infra_edns_update(sq->outnet->infra, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3144
sq->addrlen, sq->zone, sq->zonelen, -1,
sbin/unwind/libunbound/services/outside_network.c
3145
*sq->outnet->now_secs))
sbin/unwind/libunbound/services/outside_network.c
3147
sq->status = serviced_query_TCP;
sbin/unwind/libunbound/services/outside_network.c
3149
if(sq->tcp_upstream || sq->ssl_upstream) {
sbin/unwind/libunbound/services/outside_network.c
3150
struct timeval now = *sq->outnet->now_tv;
sbin/unwind/libunbound/services/outside_network.c
3152
if(!infra_rtt_update(sq->outnet->infra, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3153
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
sbin/unwind/libunbound/services/outside_network.c
3154
-1, sq->last_rtt, (time_t)now.tv_sec))
sbin/unwind/libunbound/services/outside_network.c
3156
} else if(now.tv_sec > sq->last_sent_time.tv_sec ||
sbin/unwind/libunbound/services/outside_network.c
3157
(now.tv_sec == sq->last_sent_time.tv_sec &&
sbin/unwind/libunbound/services/outside_network.c
3158
now.tv_usec > sq->last_sent_time.tv_usec)) {
sbin/unwind/libunbound/services/outside_network.c
3160
int roundtime = ((int)(now.tv_sec - sq->last_sent_time.tv_sec))*1000
sbin/unwind/libunbound/services/outside_network.c
3161
+ ((int)now.tv_usec - (int)sq->last_sent_time.tv_usec)/1000;
sbin/unwind/libunbound/services/outside_network.c
3167
if(!infra_rtt_update(sq->outnet->infra, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3168
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
sbin/unwind/libunbound/services/outside_network.c
3169
roundtime, sq->last_rtt, (time_t)now.tv_sec))
sbin/unwind/libunbound/services/outside_network.c
3180
memcpy(&rep->remote_addr, &sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3181
rep->remote_addrlen = sq->addrlen;
sbin/unwind/libunbound/services/outside_network.c
3182
serviced_callbacks(sq, error, c, rep);
sbin/unwind/libunbound/services/outside_network.c
3187
serviced_tcp_initiate(struct serviced_query* sq, sldns_buffer* buff)
sbin/unwind/libunbound/services/outside_network.c
3190
sq->status==serviced_query_TCP_EDNS?"EDNS":"");
sbin/unwind/libunbound/services/outside_network.c
3191
serviced_encode(sq, buff, sq->status == serviced_query_TCP_EDNS);
sbin/unwind/libunbound/services/outside_network.c
3192
sq->last_sent_time = *sq->outnet->now_tv;
sbin/unwind/libunbound/services/outside_network.c
3193
log_assert(!sq->busy);
sbin/unwind/libunbound/services/outside_network.c
3194
sq->busy = 1;
sbin/unwind/libunbound/services/outside_network.c
3195
sq->pending = pending_tcp_query(sq, buff, sq->outnet->tcp_auth_query_timeout,
sbin/unwind/libunbound/services/outside_network.c
3196
serviced_tcp_callback, sq);
sbin/unwind/libunbound/services/outside_network.c
3197
sq->busy = 0;
sbin/unwind/libunbound/services/outside_network.c
3198
if(!sq->pending) {
sbin/unwind/libunbound/services/outside_network.c
3202
serviced_callbacks(sq, NETEVENT_CLOSED, NULL, NULL);
sbin/unwind/libunbound/services/outside_network.c
3208
serviced_tcp_send(struct serviced_query* sq, sldns_buffer* buff)
sbin/unwind/libunbound/services/outside_network.c
3212
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
sbin/unwind/libunbound/services/outside_network.c
3213
sq->zonelen, *sq->outnet->now_secs, &vs, &edns_lame_known,
sbin/unwind/libunbound/services/outside_network.c
3216
sq->last_rtt = rtt;
sbin/unwind/libunbound/services/outside_network.c
3218
sq->status = serviced_query_TCP_EDNS;
sbin/unwind/libunbound/services/outside_network.c
3219
else sq->status = serviced_query_TCP;
sbin/unwind/libunbound/services/outside_network.c
3220
serviced_encode(sq, buff, sq->status == serviced_query_TCP_EDNS);
sbin/unwind/libunbound/services/outside_network.c
3221
sq->last_sent_time = *sq->outnet->now_tv;
sbin/unwind/libunbound/services/outside_network.c
3222
if(sq->tcp_upstream || sq->ssl_upstream) {
sbin/unwind/libunbound/services/outside_network.c
3224
if(rtt >= UNKNOWN_SERVER_NICENESS && rtt < sq->outnet->tcp_auth_query_timeout)
sbin/unwind/libunbound/services/outside_network.c
3225
timeout = sq->outnet->tcp_auth_query_timeout;
sbin/unwind/libunbound/services/outside_network.c
3227
timeout = sq->outnet->tcp_auth_query_timeout;
sbin/unwind/libunbound/services/outside_network.c
3229
log_assert(!sq->busy);
sbin/unwind/libunbound/services/outside_network.c
3230
sq->busy = 1;
sbin/unwind/libunbound/services/outside_network.c
3231
sq->pending = pending_tcp_query(sq, buff, timeout,
sbin/unwind/libunbound/services/outside_network.c
3232
serviced_tcp_callback, sq);
sbin/unwind/libunbound/services/outside_network.c
3233
sq->busy = 0;
sbin/unwind/libunbound/services/outside_network.c
3234
return sq->pending != NULL;
sbin/unwind/libunbound/services/outside_network.c
3279
struct serviced_query* sq = (struct serviced_query*)arg;
sbin/unwind/libunbound/services/outside_network.c
3280
struct outside_network* outnet = sq->outnet;
sbin/unwind/libunbound/services/outside_network.c
3281
struct timeval now = *sq->outnet->now_tv;
sbin/unwind/libunbound/services/outside_network.c
3283
struct pending* p = (struct pending*)sq->pending;
sbin/unwind/libunbound/services/outside_network.c
3286
sq->pending = NULL; /* removed after callback */
sbin/unwind/libunbound/services/outside_network.c
3288
if(sq->status == serviced_query_UDP_EDNS && sq->last_rtt < 5000 &&
sbin/unwind/libunbound/services/outside_network.c
3289
(serviced_query_udp_size(sq, serviced_query_UDP_EDNS_FRAG) < serviced_query_udp_size(sq, serviced_query_UDP_EDNS))) {
sbin/unwind/libunbound/services/outside_network.c
3291
sq->status = serviced_query_UDP_EDNS_FRAG;
sbin/unwind/libunbound/services/outside_network.c
3292
log_name_addr(VERB_ALGO, "try edns1xx0", sq->qbuf+10,
sbin/unwind/libunbound/services/outside_network.c
3293
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3294
if(!serviced_udp_send(sq, c->buffer)) {
sbin/unwind/libunbound/services/outside_network.c
3295
serviced_callbacks(sq, NETEVENT_CLOSED, c, rep);
sbin/unwind/libunbound/services/outside_network.c
3299
if(sq->status == serviced_query_UDP_EDNS_FRAG) {
sbin/unwind/libunbound/services/outside_network.c
3301
sq->status = serviced_query_UDP_EDNS;
sbin/unwind/libunbound/services/outside_network.c
3303
sq->retry++;
sbin/unwind/libunbound/services/outside_network.c
3304
if(!infra_rtt_update(outnet->infra, &sq->addr, sq->addrlen,
sbin/unwind/libunbound/services/outside_network.c
3305
sq->zone, sq->zonelen, sq->qtype, -1, sq->last_rtt,
sbin/unwind/libunbound/services/outside_network.c
3308
if(sq->retry < OUTBOUND_UDP_RETRY) {
sbin/unwind/libunbound/services/outside_network.c
3309
log_name_addr(VERB_ALGO, "retry query", sq->qbuf+10,
sbin/unwind/libunbound/services/outside_network.c
3310
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3311
if(!serviced_udp_send(sq, c->buffer)) {
sbin/unwind/libunbound/services/outside_network.c
3312
serviced_callbacks(sq, NETEVENT_CLOSED, c, rep);
sbin/unwind/libunbound/services/outside_network.c
3319
serviced_callbacks(sq, error, c, rep);
sbin/unwind/libunbound/services/outside_network.c
3329
log_addr(VERB_ALGO, "response from upstream", &sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3332
dt_msg_send_outside_response(outnet->dtenv, &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3333
&p->pc->pif->addr, c->type, c->ssl, sq->zone, sq->zonelen,
sbin/unwind/libunbound/services/outside_network.c
3334
sq->qbuf, sq->qbuflen, &sq->last_sent_time,
sbin/unwind/libunbound/services/outside_network.c
3335
sq->outnet->now_tv, c->buffer);
sbin/unwind/libunbound/services/outside_network.c
3338
if( (sq->status == serviced_query_UDP_EDNS
sbin/unwind/libunbound/services/outside_network.c
3339
||sq->status == serviced_query_UDP_EDNS_FRAG)
sbin/unwind/libunbound/services/outside_network.c
3343
|| packet_edns_malformed(c->buffer, sq->qtype)
sbin/unwind/libunbound/services/outside_network.c
3347
sq->status = serviced_query_UDP_EDNS_fallback;
sbin/unwind/libunbound/services/outside_network.c
3348
sq->retry = 0;
sbin/unwind/libunbound/services/outside_network.c
3349
if(!serviced_udp_send(sq, c->buffer)) {
sbin/unwind/libunbound/services/outside_network.c
3350
serviced_callbacks(sq, NETEVENT_CLOSED, c, rep);
sbin/unwind/libunbound/services/outside_network.c
3353
} else if(sq->status == serviced_query_UDP_EDNS &&
sbin/unwind/libunbound/services/outside_network.c
3354
!sq->edns_lame_known) {
sbin/unwind/libunbound/services/outside_network.c
3357
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3358
if(!infra_edns_update(outnet->infra, &sq->addr, sq->addrlen,
sbin/unwind/libunbound/services/outside_network.c
3359
sq->zone, sq->zonelen, 0, (time_t)now.tv_sec)) {
sbin/unwind/libunbound/services/outside_network.c
3362
sq->edns_lame_known = 1;
sbin/unwind/libunbound/services/outside_network.c
3363
} else if(sq->status == serviced_query_UDP_EDNS_fallback &&
sbin/unwind/libunbound/services/outside_network.c
3364
!sq->edns_lame_known && (LDNS_RCODE_WIRE(
sbin/unwind/libunbound/services/outside_network.c
3372
if(!sq->want_dnssec) {
sbin/unwind/libunbound/services/outside_network.c
3374
&sq->addr, sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3375
if(!infra_edns_update(outnet->infra, &sq->addr, sq->addrlen,
sbin/unwind/libunbound/services/outside_network.c
3376
sq->zone, sq->zonelen, -1, (time_t)now.tv_sec)) {
sbin/unwind/libunbound/services/outside_network.c
3381
"not stored because need DNSSEC for", &sq->addr,
sbin/unwind/libunbound/services/outside_network.c
3382
sq->addrlen);
sbin/unwind/libunbound/services/outside_network.c
3384
sq->status = serviced_query_UDP;
sbin/unwind/libunbound/services/outside_network.c
3386
if(now.tv_sec > sq->last_sent_time.tv_sec ||
sbin/unwind/libunbound/services/outside_network.c
3387
(now.tv_sec == sq->last_sent_time.tv_sec &&
sbin/unwind/libunbound/services/outside_network.c
3388
now.tv_usec > sq->last_sent_time.tv_usec)) {
sbin/unwind/libunbound/services/outside_network.c
3390
int roundtime = ((int)(now.tv_sec - sq->last_sent_time.tv_sec))*1000
sbin/unwind/libunbound/services/outside_network.c
3391
+ ((int)now.tv_usec - (int)sq->last_sent_time.tv_usec)/1000;
sbin/unwind/libunbound/services/outside_network.c
3397
if(!infra_rtt_update(outnet->infra, &sq->addr, sq->addrlen,
sbin/unwind/libunbound/services/outside_network.c
3398
sq->zone, sq->zonelen, sq->qtype, roundtime,
sbin/unwind/libunbound/services/outside_network.c
3399
sq->last_rtt, (time_t)now.tv_sec))
sbin/unwind/libunbound/services/outside_network.c
3408
if(sq->status == serviced_query_UDP_EDNS ||
sbin/unwind/libunbound/services/outside_network.c
3409
sq->status == serviced_query_UDP_EDNS_FRAG ||
sbin/unwind/libunbound/services/outside_network.c
3410
sq->status == serviced_query_UDP_EDNS_fallback)
sbin/unwind/libunbound/services/outside_network.c
3412
sq->status = serviced_query_TCP_EDNS;
sbin/unwind/libunbound/services/outside_network.c
3413
else sq->status = serviced_query_TCP;
sbin/unwind/libunbound/services/outside_network.c
3414
serviced_tcp_initiate(sq, c->buffer);
sbin/unwind/libunbound/services/outside_network.c
3418
serviced_callbacks(sq, error, c, rep);
sbin/unwind/libunbound/services/outside_network.c
3431
struct serviced_query* sq;
sbin/unwind/libunbound/services/outside_network.c
3476
sq = lookup_serviced(outnet, buff, dnssec, addr, addrlen,
sbin/unwind/libunbound/services/outside_network.c
3478
if(!sq) {
sbin/unwind/libunbound/services/outside_network.c
3503
sq = serviced_create(outnet, buff, dnssec, want_dnssec, nocaps,
sbin/unwind/libunbound/services/outside_network.c
3510
if(!sq) {
sbin/unwind/libunbound/services/outside_network.c
3518
sq->region, sizeof(*cb)))) {
sbin/unwind/libunbound/services/outside_network.c
3523
(void)rbtree_delete(outnet->serviced, sq);
sbin/unwind/libunbound/services/outside_network.c
3524
serviced_node_del(&sq->node, NULL);
sbin/unwind/libunbound/services/outside_network.c
3536
sq->region, sizeof(*cb)))) {
sbin/unwind/libunbound/services/outside_network.c
3543
cb->next = sq->cblist;
sbin/unwind/libunbound/services/outside_network.c
3544
sq->cblist = cb;
sbin/unwind/libunbound/services/outside_network.c
3545
return sq;
sbin/unwind/libunbound/services/outside_network.c
3550
callback_list_remove(struct serviced_query* sq, void* cb_arg)
sbin/unwind/libunbound/services/outside_network.c
3552
struct service_callback** pp = &sq->cblist;
sbin/unwind/libunbound/services/outside_network.c
3563
void outnet_serviced_query_stop(struct serviced_query* sq, void* cb_arg)
sbin/unwind/libunbound/services/outside_network.c
3565
if(!sq)
sbin/unwind/libunbound/services/outside_network.c
3567
callback_list_remove(sq, cb_arg);
sbin/unwind/libunbound/services/outside_network.c
3569
if(!sq->cblist && !sq->busy && !sq->to_be_deleted) {
sbin/unwind/libunbound/services/outside_network.c
3570
(void)rbtree_delete(sq->outnet->serviced, sq);
sbin/unwind/libunbound/services/outside_network.c
3571
serviced_delete(sq);
sbin/unwind/libunbound/services/outside_network.c
3897
struct serviced_query* sq;
sbin/unwind/libunbound/services/outside_network.c
3928
RBTREE_FOR(sq, struct serviced_query*, outnet->serviced) {
sbin/unwind/libunbound/services/outside_network.c
3929
s += sizeof(*sq) + sq->qbuflen;
sbin/unwind/libunbound/services/outside_network.c
3930
for(sb = sq->cblist; sb; sb = sb->next)
sbin/unwind/libunbound/services/outside_network.c
3937
serviced_get_mem(struct serviced_query* sq)
sbin/unwind/libunbound/services/outside_network.c
3941
s = sizeof(*sq) + sq->qbuflen;
sbin/unwind/libunbound/services/outside_network.c
3942
for(sb = sq->cblist; sb; sb = sb->next)
sbin/unwind/libunbound/services/outside_network.c
3944
if(sq->status == serviced_query_UDP_EDNS ||
sbin/unwind/libunbound/services/outside_network.c
3945
sq->status == serviced_query_UDP ||
sbin/unwind/libunbound/services/outside_network.c
3946
sq->status == serviced_query_UDP_EDNS_FRAG ||
sbin/unwind/libunbound/services/outside_network.c
3947
sq->status == serviced_query_UDP_EDNS_fallback) {
sbin/unwind/libunbound/services/outside_network.c
84
static void serviced_tcp_initiate(struct serviced_query* sq, sldns_buffer* buff);
sbin/unwind/libunbound/services/outside_network.c
94
static int serviced_udp_send(struct serviced_query* sq, sldns_buffer* buff);
sbin/unwind/libunbound/services/outside_network.c
97
static int serviced_tcp_send(struct serviced_query* sq, sldns_buffer* buff);
sbin/unwind/libunbound/services/outside_network.h
334
struct serviced_query* sq;
sbin/unwind/libunbound/services/outside_network.h
423
struct serviced_query* sq;
sbin/unwind/libunbound/services/outside_network.h
597
struct pending* pending_udp_query(struct serviced_query* sq,
sbin/unwind/libunbound/services/outside_network.h
613
struct waiting_tcp* pending_tcp_query(struct serviced_query* sq,
sbin/unwind/libunbound/services/outside_network.h
674
void outnet_serviced_query_stop(struct serviced_query* sq, void* cb_arg);
sbin/unwind/libunbound/services/outside_network.h
691
size_t serviced_get_mem(struct serviced_query* sq);
sys/arch/arm64/dev/smmu.c
1818
struct smmu_v3_queue *sq = &sc->v3.sc_eventq;
sys/arch/arm64/dev/smmu.c
1826
if (SMMU_V3_Q_OVF(sq->sq_prod) != SMMU_V3_Q_OVF(prod))
sys/arch/arm64/dev/smmu.c
1829
sq->sq_prod = prod;
sys/arch/arm64/dev/smmu.c
1832
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) ==
sys/arch/arm64/dev/smmu.c
1833
SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
1834
SMMU_V3_Q_WRP(sq, sq->sq_cons) ==
sys/arch/arm64/dev/smmu.c
1835
SMMU_V3_Q_WRP(sq, sq->sq_prod))
sys/arch/arm64/dev/smmu.c
1839
off = SMMU_V3_Q_IDX(sq, sq->sq_cons) * 4 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
1840
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
1842
event = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
1847
cons = (SMMU_V3_Q_WRP(sq, sq->sq_cons) |
sys/arch/arm64/dev/smmu.c
1848
SMMU_V3_Q_IDX(sq, sq->sq_cons)) + 1;
sys/arch/arm64/dev/smmu.c
1849
sq->sq_cons = SMMU_V3_Q_OVF(sq->sq_cons) |
sys/arch/arm64/dev/smmu.c
1850
SMMU_V3_Q_WRP(sq, cons) |
sys/arch/arm64/dev/smmu.c
1851
SMMU_V3_Q_IDX(sq, cons);
sys/arch/arm64/dev/smmu.c
1853
smmu_v3_write_4(sc, SMMU_V3_EVENTQ_CONS, sq->sq_cons);
sys/arch/arm64/dev/smmu.c
1859
if (SMMU_V3_Q_OVF(sq->sq_prod) != SMMU_V3_Q_OVF(sq->sq_cons)) {
sys/arch/arm64/dev/smmu.c
1860
sq->sq_cons = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
1861
SMMU_V3_Q_WRP(sq, sq->sq_cons) |
sys/arch/arm64/dev/smmu.c
1862
SMMU_V3_Q_IDX(sq, sq->sq_cons);
sys/arch/arm64/dev/smmu.c
1864
smmu_v3_write_4(sc, SMMU_V3_EVENTQ_CONS, sq->sq_cons);
sys/arch/arm64/dev/smmu.c
1898
struct smmu_v3_queue *sq = &sc->v3.sc_priq;
sys/arch/arm64/dev/smmu.c
1905
if (SMMU_V3_Q_OVF(sq->sq_prod) != SMMU_V3_Q_OVF(prod))
sys/arch/arm64/dev/smmu.c
1908
sq->sq_prod = prod;
sys/arch/arm64/dev/smmu.c
1911
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) ==
sys/arch/arm64/dev/smmu.c
1912
SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
1913
SMMU_V3_Q_WRP(sq, sq->sq_cons) ==
sys/arch/arm64/dev/smmu.c
1914
SMMU_V3_Q_WRP(sq, sq->sq_prod))
sys/arch/arm64/dev/smmu.c
1918
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm),
sys/arch/arm64/dev/smmu.c
1919
SMMU_V3_Q_IDX(sq, sq->sq_cons) * 2 * sizeof(uint64_t),
sys/arch/arm64/dev/smmu.c
1922
pri = SMMU_DMA_KVA(sq->sq_sdm) +
sys/arch/arm64/dev/smmu.c
1923
SMMU_V3_Q_IDX(sq, sq->sq_cons) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
1928
cons = (SMMU_V3_Q_WRP(sq, sq->sq_cons) |
sys/arch/arm64/dev/smmu.c
1929
SMMU_V3_Q_IDX(sq, sq->sq_cons)) + 1;
sys/arch/arm64/dev/smmu.c
1930
sq->sq_cons = SMMU_V3_Q_OVF(sq->sq_cons) |
sys/arch/arm64/dev/smmu.c
1931
SMMU_V3_Q_WRP(sq, cons) |
sys/arch/arm64/dev/smmu.c
1932
SMMU_V3_Q_IDX(sq, cons);
sys/arch/arm64/dev/smmu.c
1934
smmu_v3_write_4(sc, SMMU_V3_PRIQ_CONS, sq->sq_cons);
sys/arch/arm64/dev/smmu.c
1940
if (SMMU_V3_Q_OVF(sq->sq_prod) != SMMU_V3_Q_OVF(sq->sq_cons)) {
sys/arch/arm64/dev/smmu.c
1941
sq->sq_cons = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
1942
SMMU_V3_Q_WRP(sq, sq->sq_cons) |
sys/arch/arm64/dev/smmu.c
1943
SMMU_V3_Q_IDX(sq, sq->sq_cons);
sys/arch/arm64/dev/smmu.c
1945
smmu_v3_write_4(sc, SMMU_V3_PRIQ_CONS, sq->sq_cons);
sys/arch/arm64/dev/smmu.c
2132
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2141
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2142
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2143
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2148
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2149
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2150
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2154
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2158
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2159
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2160
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2161
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2163
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/arch/arm64/dev/smmu.c
2171
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2172
if ((SMMU_V3_Q_WRP(sq, sq->sq_cons) ==
sys/arch/arm64/dev/smmu.c
2173
SMMU_V3_Q_WRP(sq, sq->sq_prod)) &&
sys/arch/arm64/dev/smmu.c
2174
(SMMU_V3_Q_IDX(sq, sq->sq_cons) ==
sys/arch/arm64/dev/smmu.c
2175
SMMU_V3_Q_IDX(sq, sq->sq_prod)))
sys/arch/arm64/dev/smmu.c
2180
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2190
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2198
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2199
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2200
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2206
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2207
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2208
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2212
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2216
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2217
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2218
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2219
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2221
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/arch/arm64/dev/smmu.c
2232
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2240
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2241
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2242
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2248
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2249
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2250
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2255
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2259
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2260
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2261
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2262
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2264
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/arch/arm64/dev/smmu.c
2275
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2283
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2284
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2285
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2291
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2292
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2293
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2298
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2302
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2303
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2304
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2305
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2307
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/arch/arm64/dev/smmu.c
2317
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2325
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2326
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2327
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2333
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2334
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2335
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2339
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2343
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2344
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2345
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2346
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2348
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/arch/arm64/dev/smmu.c
2359
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2367
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2368
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2369
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2375
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2376
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2377
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2384
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2388
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2389
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2390
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2391
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2393
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/arch/arm64/dev/smmu.c
2404
struct smmu_v3_queue *sq = &sc->v3.sc_cmdq;
sys/arch/arm64/dev/smmu.c
2412
sq->sq_cons = smmu_v3_read_4(sc, SMMU_V3_CMDQ_CONS);
sys/arch/arm64/dev/smmu.c
2413
if (SMMU_V3_Q_IDX(sq, sq->sq_cons) == SMMU_V3_Q_IDX(sq, sq->sq_prod) &&
sys/arch/arm64/dev/smmu.c
2414
SMMU_V3_Q_WRP(sq, sq->sq_cons) != SMMU_V3_Q_WRP(sq, sq->sq_prod)) {
sys/arch/arm64/dev/smmu.c
2420
off = SMMU_V3_Q_IDX(sq, sq->sq_prod) * 2 * sizeof(uint64_t);
sys/arch/arm64/dev/smmu.c
2421
cmd = SMMU_DMA_KVA(sq->sq_sdm) + off;
sys/arch/arm64/dev/smmu.c
2422
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2430
bus_dmamap_sync(sc->sc_dmat, SMMU_DMA_MAP(sq->sq_sdm), off,
sys/arch/arm64/dev/smmu.c
2434
prod = (SMMU_V3_Q_WRP(sq, sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2435
SMMU_V3_Q_IDX(sq, sq->sq_prod)) + 1;
sys/arch/arm64/dev/smmu.c
2436
sq->sq_prod = SMMU_V3_Q_OVF(sq->sq_prod) |
sys/arch/arm64/dev/smmu.c
2437
SMMU_V3_Q_WRP(sq, prod) | SMMU_V3_Q_IDX(sq, prod);
sys/arch/arm64/dev/smmu.c
2439
smmu_v3_write_4(sc, SMMU_V3_CMDQ_PROD, sq->sq_prod);
sys/dev/ic/rtw.c
1086
int hwrate, len, rate, rssi, sq;
sys/dev/ic/rtw.c
1234
sq = MASK_AND_RSHIFT(hrssi, RTW_RXRSSI_SQ);
sys/dev/ic/rtw.c
1278
rr->rr_barker_lock = htole16(sq);
sys/dev/pci/drm/amd/amdgpu/amdgpu_vcn.h
459
struct amdgpu_fw_shared_unified_queue_struct sq;
sys/dev/pci/drm/amd/amdgpu/amdgpu_vcn.h
497
struct amdgpu_fw_shared_unified_queue_struct sq;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
1103
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
1114
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
1293
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
1304
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
155
fw_shared->sq.is_enabled = 1;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
1617
fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0.c
288
fw_shared->sq.is_enabled = 0;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
1344
fw_shared->sq.queue_mode &=
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
1407
fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
156
fw_shared->sq.is_enabled = 1;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
270
fw_shared->sq.is_enabled = cpu_to_le32(false);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
358
if (!fw_shared->sq.is_enabled)
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
967
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
977
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_3.c
980
fw_shared->sq.queue_mode &= cpu_to_le32(~FW_QUEUE_RING_RESET);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
1016
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
1027
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
1206
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
1217
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
1279
fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
199
fw_shared->sq.is_enabled = 1;
sys/dev/pci/drm/amd/amdgpu/vcn_v4_0_5.c
259
fw_shared->sq.is_enabled = 0;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
1010
fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
175
fw_shared->sq.is_enabled = 1;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
225
fw_shared->sq.is_enabled = 0;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
773
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
784
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
934
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_0.c
945
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
1104
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
1115
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
1181
fw_shared->sq.queue_mode |= FW_QUEUE_DPG_HOLD_OFF;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
143
if (fw_shared->sq.is_enabled)
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
147
fw_shared->sq.is_enabled = 1;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
250
fw_shared->sq.is_enabled = 0;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
745
fw_shared->sq.queue_mode |= FW_QUEUE_RING_RESET;
sys/dev/pci/drm/amd/amdgpu/vcn_v5_0_1.c
771
fw_shared->sq.queue_mode &= ~(FW_QUEUE_RING_RESET | FW_QUEUE_DPG_HOLD_OFF);
sys/dev/pci/if_ice.c
1223
if (cq->sq.len && cq->sq.len_mask && cq->sq.len_ena_mask)
sys/dev/pci/if_ice.c
1224
return (ICE_READ(hw, cq->sq.len) & (cq->sq.len_mask |
sys/dev/pci/if_ice.c
1225
cq->sq.len_ena_mask)) ==
sys/dev/pci/if_ice.c
1226
(cq->num_sq_entries | cq->sq.len_ena_mask);
sys/dev/pci/if_ice.c
1233
(qinfo)->sq.head = prefix##_ATQH; \
sys/dev/pci/if_ice.c
1234
(qinfo)->sq.tail = prefix##_ATQT; \
sys/dev/pci/if_ice.c
1235
(qinfo)->sq.len = prefix##_ATQLEN; \
sys/dev/pci/if_ice.c
1236
(qinfo)->sq.bah = prefix##_ATQBAH; \
sys/dev/pci/if_ice.c
1237
(qinfo)->sq.bal = prefix##_ATQBAL; \
sys/dev/pci/if_ice.c
1238
(qinfo)->sq.len_mask = prefix##_ATQLEN_ATQLEN_M; \
sys/dev/pci/if_ice.c
1239
(qinfo)->sq.len_ena_mask = prefix##_ATQLEN_ATQENABLE_M; \
sys/dev/pci/if_ice.c
1240
(qinfo)->sq.len_crit_mask = prefix##_ATQLEN_ATQCRIT_M; \
sys/dev/pci/if_ice.c
1241
(qinfo)->sq.head_mask = prefix##_ATQH_ATQH_M; \
sys/dev/pci/if_ice.c
1365
cq->sq.desc_buf.va = ice_alloc_dma_mem(hw, &cq->sq.desc_buf, size);
sys/dev/pci/if_ice.c
1366
if (!cq->sq.desc_buf.va)
sys/dev/pci/if_ice.c
1392
cq->sq.dma_head = ice_calloc(hw, cq->num_sq_entries,
sys/dev/pci/if_ice.c
1393
sizeof(cq->sq.desc_buf));
sys/dev/pci/if_ice.c
1394
if (!cq->sq.dma_head)
sys/dev/pci/if_ice.c
1396
cq->sq.r.sq_bi = (struct ice_dma_mem *)cq->sq.dma_head;
sys/dev/pci/if_ice.c
1402
bi = &cq->sq.r.sq_bi[i];
sys/dev/pci/if_ice.c
1413
ice_free_dma_mem(hw, &cq->sq.r.sq_bi[i]);
sys/dev/pci/if_ice.c
1414
cq->sq.r.sq_bi = NULL;
sys/dev/pci/if_ice.c
1415
ice_free(hw, cq->sq.dma_head);
sys/dev/pci/if_ice.c
1416
cq->sq.dma_head = NULL;
sys/dev/pci/if_ice.c
1525
return ice_cfg_cq_regs(hw, &cq->sq, cq->num_sq_entries);
sys/dev/pci/if_ice.c
1583
if (cq->sq.count > 0) {
sys/dev/pci/if_ice.c
1595
cq->sq.next_to_use = 0;
sys/dev/pci/if_ice.c
1596
cq->sq.next_to_clean = 0;
sys/dev/pci/if_ice.c
1614
cq->sq.count = cq->num_sq_entries;
sys/dev/pci/if_ice.c
1618
ICE_FREE_CQ_BUFS(hw, cq, sq);
sys/dev/pci/if_ice.c
1619
ice_free_cq_ring(hw, &cq->sq);
sys/dev/pci/if_ice.c
1785
struct ice_ctl_q_ring *sq = &cq->sq;
sys/dev/pci/if_ice.c
1786
uint16_t ntc = sq->next_to_clean;
sys/dev/pci/if_ice.c
1789
desc = ICE_CTL_Q_DESC(*sq, ntc);
sys/dev/pci/if_ice.c
1791
while (ICE_READ(hw, cq->sq.head) != ntc) {
sys/dev/pci/if_ice.c
1793
ICE_READ(hw, cq->sq.head));
sys/dev/pci/if_ice.c
1796
if (ntc == sq->count)
sys/dev/pci/if_ice.c
1798
desc = ICE_CTL_Q_DESC(*sq, ntc);
sys/dev/pci/if_ice.c
1801
sq->next_to_clean = ntc;
sys/dev/pci/if_ice.c
1803
return ICE_CTL_Q_DESC_UNUSED(sq);
sys/dev/pci/if_ice.c
1893
return ICE_READ(hw, cq->sq.head) == cq->sq.next_to_use;
sys/dev/pci/if_ice.c
1928
if (!cq->sq.count) {
sys/dev/pci/if_ice.c
1954
val = ICE_READ(hw, cq->sq.head);
sys/dev/pci/if_ice.c
1975
desc_on_ring = ICE_CTL_Q_DESC(cq->sq, cq->sq.next_to_use);
sys/dev/pci/if_ice.c
1982
dma_buf = &cq->sq.r.sq_bi[cq->sq.next_to_use];
sys/dev/pci/if_ice.c
2000
(cq->sq.next_to_use)++;
sys/dev/pci/if_ice.c
2001
if (cq->sq.next_to_use == cq->sq.count)
sys/dev/pci/if_ice.c
2002
cq->sq.next_to_use = 0;
sys/dev/pci/if_ice.c
2003
ICE_WRITE(hw, cq->sq.tail, cq->sq.next_to_use);
sys/dev/pci/if_ice.c
2060
ICE_READ(hw, cq->sq.len) & cq->sq.len_crit_mask) {
sys/dev/pci/if_ice.c
26892
val = ICE_READ(hw, cq->sq.len);
sys/dev/pci/if_ice.c
26906
ICE_WRITE(hw, cq->sq.len, val);
sys/dev/pci/if_ice.c
2737
if (!cq->sq.count) {
sys/dev/pci/if_ice.c
2743
ICE_WRITE(hw, cq->sq.head, 0);
sys/dev/pci/if_ice.c
2744
ICE_WRITE(hw, cq->sq.tail, 0);
sys/dev/pci/if_ice.c
2745
ICE_WRITE(hw, cq->sq.len, 0);
sys/dev/pci/if_ice.c
2746
ICE_WRITE(hw, cq->sq.bal, 0);
sys/dev/pci/if_ice.c
2747
ICE_WRITE(hw, cq->sq.bah, 0);
sys/dev/pci/if_ice.c
2749
cq->sq.count = 0; /* to indicate uninitialized queue */
sys/dev/pci/if_ice.c
2752
ICE_FREE_CQ_BUFS(hw, cq, sq);
sys/dev/pci/if_ice.c
2753
ice_free_cq_ring(hw, &cq->sq);
sys/dev/pci/if_icevar.h
963
struct ice_ctl_q_ring sq; /* send queue */
sys/dev/pci/if_mcx.c
7816
struct mcx_sq_entry *sq, *sqe;
sys/dev/pci/if_mcx.c
7841
sq = (struct mcx_sq_entry *)MCX_DMA_KVA(&tx->tx_sq_mem);
sys/dev/pci/if_mcx.c
7854
sqe = sq + idx;
sys/dev/pci/if_mcx.c
7936
sqs = (struct mcx_sq_entry_seg *)(sq + idx);
sys/dev/pci/if_mcx.c
8846
struct mcx_sq_ctx sq;
sys/dev/pci/if_mcx.c
8879
if (mcx_query_sq(sc, &q->q_tx, &u.sq) != 0) {
sys/dev/pci/if_mcx.c
8886
kstat_kv_u64(kvs++) = bemtoh32(&u.sq.sq_wq.wq_sw_counter);
sys/dev/pci/if_mcx.c
8887
kstat_kv_u64(kvs++) = bemtoh32(&u.sq.sq_wq.wq_hw_counter);
sys/dev/pci/if_mcx.c
8888
switch ((bemtoh32(&u.sq.sq_flags) & MCX_SQ_CTX_STATE_MASK) >>
usr.bin/cvs/diff_internals.c
546
int oldc, tc, oldl, sq;
usr.bin/cvs/diff_internals.c
552
sq = isqrt(n);
usr.bin/cvs/diff_internals.c
553
bound = MAXIMUM(256, sq);
usr.bin/diff/diffreg.c
595
int oldc, tc, oldl, sq;
usr.bin/diff/diffreg.c
601
sq = isqrt(n);
usr.bin/diff/diffreg.c
602
bound = MAXIMUM(256, sq);
usr.bin/rcs/diff.c
528
int oldc, tc, oldl, sq;
usr.bin/rcs/diff.c
534
sq = isqrt(n);
usr.bin/rcs/diff.c
535
bound = MAXIMUM(256, sq);
usr.sbin/smtpd/expand.c
181
int esc, dq, sq;
usr.sbin/smtpd/expand.c
186
esc = dq = sq = 0;
usr.sbin/smtpd/expand.c
198
if (*s == ',' && !dq && !sq) {
usr.sbin/smtpd/expand.c
207
if (*s == '"' && !sq)
usr.sbin/smtpd/expand.c
210
sq ^= 1;
usr.sbin/smtpd/expand.c
213
if (esc || dq || sq || i == sizeof(buffer))
usr.sbin/smtpd/mailaddr.c
29
int esc, dq, sq;
usr.sbin/smtpd/mailaddr.c
34
esc = dq = sq = 0;
usr.sbin/smtpd/mailaddr.c
46
if (*s == ',' && !dq && !sq) {
usr.sbin/smtpd/mailaddr.c
55
if (*s == '"' && !sq)
usr.sbin/smtpd/mailaddr.c
58
sq ^= 1;
usr.sbin/smtpd/mailaddr.c
61
if (esc || dq || sq || i == sizeof(buffer))
usr.sbin/unbound/daemon/worker.c
249
struct serviced_query *sq = e->qsent;
usr.sbin/unbound/daemon/worker.c
254
worker_mem_report(worker, sq);
usr.sbin/unbound/daemon/worker.c
267
worker_mem_report(worker, sq);
usr.sbin/unbound/daemon/worker.c
271
worker_mem_report(worker, sq);
usr.sbin/unbound/edns-subnet/subnetmod.c
100
sq->started_no_cache_store = qstate->no_cache_store;
usr.sbin/unbound/edns-subnet/subnetmod.c
1006
subnet_ecs_opt_list_append(&sq->ecs_client_out,
usr.sbin/unbound/edns-subnet/subnetmod.c
101
sq->started_no_cache_lookup = qstate->no_cache_lookup;
usr.sbin/unbound/edns-subnet/subnetmod.c
1020
if(sq->ecs_client_in.subnet_source_mask == 0 &&
usr.sbin/unbound/edns-subnet/subnetmod.c
1025
qstate, id, sq);
usr.sbin/unbound/edns-subnet/subnetmod.c
1029
sq->ecs_server_out.subnet_addr_fam =
usr.sbin/unbound/edns-subnet/subnetmod.c
1030
sq->ecs_client_in.subnet_addr_fam;
usr.sbin/unbound/edns-subnet/subnetmod.c
1031
sq->ecs_server_out.subnet_source_mask =
usr.sbin/unbound/edns-subnet/subnetmod.c
1032
sq->ecs_client_in.subnet_source_mask;
usr.sbin/unbound/edns-subnet/subnetmod.c
1034
if(sq->ecs_server_out.subnet_addr_fam == EDNSSUBNET_ADDRFAM_IP4
usr.sbin/unbound/edns-subnet/subnetmod.c
1035
&& sq->ecs_server_out.subnet_source_mask >
usr.sbin/unbound/edns-subnet/subnetmod.c
1037
sq->ecs_server_out.subnet_source_mask =
usr.sbin/unbound/edns-subnet/subnetmod.c
1039
else if(sq->ecs_server_out.subnet_addr_fam == EDNSSUBNET_ADDRFAM_IP6
usr.sbin/unbound/edns-subnet/subnetmod.c
1040
&& sq->ecs_server_out.subnet_source_mask >
usr.sbin/unbound/edns-subnet/subnetmod.c
1042
sq->ecs_server_out.subnet_source_mask =
usr.sbin/unbound/edns-subnet/subnetmod.c
1047
memcpy(&sq->ecs_server_out.subnet_addr,
usr.sbin/unbound/edns-subnet/subnetmod.c
1048
sq->ecs_client_in.subnet_addr, INET6_SIZE);
usr.sbin/unbound/edns-subnet/subnetmod.c
1049
sq->ecs_server_out.subnet_scope_mask = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
1050
sq->ecs_server_out.subnet_validdata = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
1051
if(sq->ecs_server_out.subnet_source_mask != 0 &&
usr.sbin/unbound/edns-subnet/subnetmod.c
1053
sq->subnet_downstream)
usr.sbin/unbound/edns-subnet/subnetmod.c
1064
if(sq && sq->wait_subquery)
usr.sbin/unbound/edns-subnet/subnetmod.c
1067
if(sq && event == module_event_moddone) {
usr.sbin/unbound/edns-subnet/subnetmod.c
1068
qstate->ext_state[id] = eval_response(qstate, id, sq);
usr.sbin/unbound/edns-subnet/subnetmod.c
1071
subnet_ecs_opt_list_append(&sq->ecs_client_out,
usr.sbin/unbound/edns-subnet/subnetmod.c
1082
qstate->no_cache_store = sq->started_no_cache_store;
usr.sbin/unbound/edns-subnet/subnetmod.c
1083
qstate->no_cache_lookup = sq->started_no_cache_lookup;
usr.sbin/unbound/edns-subnet/subnetmod.c
1086
if(sq && outbound) {
usr.sbin/unbound/edns-subnet/subnetmod.c
1096
if(!sq && (event == module_event_moddone)) {
usr.sbin/unbound/edns-subnet/subnetmod.c
150
struct subnet_qstate *sq;
usr.sbin/unbound/edns-subnet/subnetmod.c
153
if(!(sq=(struct subnet_qstate*)qstate->minfo[id]))
usr.sbin/unbound/edns-subnet/subnetmod.c
157
if(sq->is_subquery_nonsubnet) {
usr.sbin/unbound/edns-subnet/subnetmod.c
158
if(sq->is_subquery_scopezero) {
usr.sbin/unbound/edns-subnet/subnetmod.c
175
&& sq->ecs_client_in.subnet_validdata) {
usr.sbin/unbound/edns-subnet/subnetmod.c
179
sq->subnet_sent_no_subnet = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
180
if(sq->ecs_server_out.subnet_validdata && ((sq->subnet_downstream &&
usr.sbin/unbound/edns-subnet/subnetmod.c
193
if(sq->ecs_server_out.subnet_source_mask == 0) {
usr.sbin/unbound/edns-subnet/subnetmod.c
194
sq->subnet_sent_no_subnet = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
195
sq->subnet_sent = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
198
subnet_ecs_opt_list_append(&sq->ecs_server_out,
usr.sbin/unbound/edns-subnet/subnetmod.c
201
sq->subnet_sent = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
211
sq->subnet_sent = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
380
struct subnet_qstate *sq = (struct subnet_qstate*)qstate->minfo[id];
usr.sbin/unbound/edns-subnet/subnetmod.c
382
struct ecs_data *edns = &sq->ecs_client_in;
usr.sbin/unbound/edns-subnet/subnetmod.c
452
edns->subnet_source_mask, sq->max_scope, rep,
usr.sbin/unbound/edns-subnet/subnetmod.c
468
lookup_and_reply(struct module_qstate *qstate, int id, struct subnet_qstate *sq, int prefetch)
usr.sbin/unbound/edns-subnet/subnetmod.c
475
struct ecs_data *ecs = &sq->ecs_client_in;
usr.sbin/unbound/edns-subnet/subnetmod.c
480
memset(&sq->ecs_client_out, 0, sizeof(sq->ecs_client_out));
usr.sbin/unbound/edns-subnet/subnetmod.c
482
if (sq) {
usr.sbin/unbound/edns-subnet/subnetmod.c
483
sq->qinfo_hash = h; /* Might be useful on cache miss */
usr.sbin/unbound/edns-subnet/subnetmod.c
484
sq->qinfo_hash_calculated = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
512
if (sq->subnet_downstream) { /* relay to interested client */
usr.sbin/unbound/edns-subnet/subnetmod.c
513
sq->ecs_client_out.subnet_scope_mask = scope;
usr.sbin/unbound/edns-subnet/subnetmod.c
514
sq->ecs_client_out.subnet_addr_fam = ecs->subnet_addr_fam;
usr.sbin/unbound/edns-subnet/subnetmod.c
515
sq->ecs_client_out.subnet_source_mask = ecs->subnet_source_mask;
usr.sbin/unbound/edns-subnet/subnetmod.c
516
memcpy(&sq->ecs_client_out.subnet_addr, &ecs->subnet_addr,
usr.sbin/unbound/edns-subnet/subnetmod.c
518
sq->ecs_client_out.subnet_validdata = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
550
generate_sub_request(struct module_qstate *qstate, int id, struct subnet_qstate* sq)
usr.sbin/unbound/edns-subnet/subnetmod.c
587
if(sq->ecs_client_in.subnet_source_mask == 0 &&
usr.sbin/unbound/edns-subnet/subnetmod.c
606
struct subnet_qstate* sq)
usr.sbin/unbound/edns-subnet/subnetmod.c
609
if(!generate_sub_request(qstate, id, sq)) {
usr.sbin/unbound/edns-subnet/subnetmod.c
615
sq->wait_subquery = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
620
eval_response(struct module_qstate *qstate, int id, struct subnet_qstate *sq)
usr.sbin/unbound/edns-subnet/subnetmod.c
624
struct ecs_data *c_in = &sq->ecs_client_in; /* rcvd from client */
usr.sbin/unbound/edns-subnet/subnetmod.c
625
struct ecs_data *c_out = &sq->ecs_client_out;/* will send to client */
usr.sbin/unbound/edns-subnet/subnetmod.c
626
struct ecs_data *s_in = &sq->ecs_server_in; /* rcvd from auth */
usr.sbin/unbound/edns-subnet/subnetmod.c
627
struct ecs_data *s_out = &sq->ecs_server_out;/* sent to auth */
usr.sbin/unbound/edns-subnet/subnetmod.c
639
if (!sq->subnet_sent && !sq->subnet_sent_no_subnet) {
usr.sbin/unbound/edns-subnet/subnetmod.c
642
if (sq->subnet_downstream) /* Copy back to client */
usr.sbin/unbound/edns-subnet/subnetmod.c
648
if (!s_in->subnet_validdata && !sq->subnet_sent_no_subnet) {
usr.sbin/unbound/edns-subnet/subnetmod.c
654
return generate_lookup_without_subnet(qstate, id, sq);
usr.sbin/unbound/edns-subnet/subnetmod.c
660
if(sq->subnet_sent_no_subnet && !s_in->subnet_validdata) {
usr.sbin/unbound/edns-subnet/subnetmod.c
684
sq->subnet_sent = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
685
sq->subnet_sent_no_subnet = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
686
return generate_lookup_without_subnet(qstate, id, sq);
usr.sbin/unbound/edns-subnet/subnetmod.c
690
if(!sq->started_no_cache_store) {
usr.sbin/unbound/edns-subnet/subnetmod.c
710
if (sq->subnet_downstream) {
usr.sbin/unbound/edns-subnet/subnetmod.c
716
c_out->subnet_scope_mask = sq->max_scope;
usr.sbin/unbound/edns-subnet/subnetmod.c
809
struct subnet_qstate *sq;
usr.sbin/unbound/edns-subnet/subnetmod.c
811
if(!response || !(sq=(struct subnet_qstate*)qstate->minfo[id]))
usr.sbin/unbound/edns-subnet/subnetmod.c
814
if(sq->subnet_sent &&
usr.sbin/unbound/edns-subnet/subnetmod.c
819
sq->subnet_sent = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
820
sq->subnet_sent_no_subnet = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
821
memset(&sq->ecs_server_out, 0, sizeof(sq->ecs_server_out));
usr.sbin/unbound/edns-subnet/subnetmod.c
822
} else if (!sq->track_max_scope &&
usr.sbin/unbound/edns-subnet/subnetmod.c
833
sq->track_max_scope = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
861
struct subnet_qstate *sq;
usr.sbin/unbound/edns-subnet/subnetmod.c
864
if(!(sq=(struct subnet_qstate*)qstate->minfo[id]))
usr.sbin/unbound/edns-subnet/subnetmod.c
869
parse_subnet_option(ecs_opt, &sq->ecs_server_in) &&
usr.sbin/unbound/edns-subnet/subnetmod.c
870
sq->subnet_sent && sq->ecs_server_in.subnet_validdata) {
usr.sbin/unbound/edns-subnet/subnetmod.c
878
if(!sq->track_max_scope || (sq->track_max_scope &&
usr.sbin/unbound/edns-subnet/subnetmod.c
879
sq->ecs_server_in.subnet_scope_mask >
usr.sbin/unbound/edns-subnet/subnetmod.c
880
sq->max_scope))
usr.sbin/unbound/edns-subnet/subnetmod.c
881
sq->max_scope = sq->ecs_server_in.subnet_scope_mask;
usr.sbin/unbound/edns-subnet/subnetmod.c
882
} else if(sq->subnet_sent_no_subnet) {
usr.sbin/unbound/edns-subnet/subnetmod.c
885
} else if(sq->subnet_sent) {
usr.sbin/unbound/edns-subnet/subnetmod.c
898
struct subnet_qstate *sq = (struct subnet_qstate*)qstate->minfo[id];
usr.sbin/unbound/edns-subnet/subnetmod.c
905
if(sq && sq->wait_subquery_done) {
usr.sbin/unbound/edns-subnet/subnetmod.c
907
if(sq->ecs_client_in.subnet_source_mask == 0 &&
usr.sbin/unbound/edns-subnet/subnetmod.c
910
if(!sq->started_no_cache_store &&
usr.sbin/unbound/edns-subnet/subnetmod.c
916
if (sq->subnet_downstream)
usr.sbin/unbound/edns-subnet/subnetmod.c
917
cp_edns_bad_response(&sq->ecs_client_out,
usr.sbin/unbound/edns-subnet/subnetmod.c
918
&sq->ecs_client_in);
usr.sbin/unbound/edns-subnet/subnetmod.c
921
subnet_ecs_opt_list_append(&sq->ecs_client_out,
usr.sbin/unbound/edns-subnet/subnetmod.c
925
sq->wait_subquery_done = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
927
qstate->no_cache_store = sq->started_no_cache_store;
usr.sbin/unbound/edns-subnet/subnetmod.c
928
qstate->no_cache_lookup = sq->started_no_cache_lookup;
usr.sbin/unbound/edns-subnet/subnetmod.c
932
sq == NULL) {
usr.sbin/unbound/edns-subnet/subnetmod.c
94
struct subnet_qstate *sq = (struct subnet_qstate*)regional_alloc(
usr.sbin/unbound/edns-subnet/subnetmod.c
940
sq = (struct subnet_qstate*)qstate->minfo[id];
usr.sbin/unbound/edns-subnet/subnetmod.c
941
if(sq->wait_subquery)
usr.sbin/unbound/edns-subnet/subnetmod.c
947
if(!parse_subnet_option(ecs_opt, &sq->ecs_client_in)) {
usr.sbin/unbound/edns-subnet/subnetmod.c
955
sq->subnet_downstream = 1;
usr.sbin/unbound/edns-subnet/subnetmod.c
96
if(!sq)
usr.sbin/unbound/edns-subnet/subnetmod.c
960
&sq->ecs_client_in, qstate->env->cfg);
usr.sbin/unbound/edns-subnet/subnetmod.c
965
&sq->ecs_client_in, qstate->env->cfg);
usr.sbin/unbound/edns-subnet/subnetmod.c
968
if(sq->ecs_client_in.subnet_validdata == 0) {
usr.sbin/unbound/edns-subnet/subnetmod.c
971
sq->ecs_server_out.subnet_validdata = 0;
usr.sbin/unbound/edns-subnet/subnetmod.c
977
qstate, id, sq);
usr.sbin/unbound/edns-subnet/subnetmod.c
98
qstate->minfo[id] = sq;
usr.sbin/unbound/edns-subnet/subnetmod.c
986
if(sq->ecs_client_in.subnet_source_mask != 0 && (
usr.sbin/unbound/edns-subnet/subnetmod.c
987
(sq->ecs_client_in.subnet_addr_fam == EDNSSUBNET_ADDRFAM_IP4 &&
usr.sbin/unbound/edns-subnet/subnetmod.c
988
sq->ecs_client_in.subnet_source_mask < qstate->env->cfg->min_client_subnet_ipv4) ||
usr.sbin/unbound/edns-subnet/subnetmod.c
989
(sq->ecs_client_in.subnet_addr_fam == EDNSSUBNET_ADDRFAM_IP6 &&
usr.sbin/unbound/edns-subnet/subnetmod.c
99
memset(sq, 0, sizeof(*sq));
usr.sbin/unbound/edns-subnet/subnetmod.c
990
sq->ecs_client_in.subnet_source_mask < qstate->env->cfg->min_client_subnet_ipv6))) {
usr.sbin/unbound/edns-subnet/subnetmod.c
996
if(!sq->started_no_cache_lookup && !qstate->blacklist) {
usr.sbin/unbound/edns-subnet/subnetmod.c
999
lookup_and_reply(qstate, id, sq,
usr.sbin/unbound/services/outside_network.c
100
static void serviced_callbacks(struct serviced_query* sq, int error,
usr.sbin/unbound/services/outside_network.c
1021
if(outnet->dtenv && pend_tcp && w && w->sq &&
usr.sbin/unbound/services/outside_network.c
1026
dt_msg_send_outside_query(outnet->dtenv, &w->sq->addr,
usr.sbin/unbound/services/outside_network.c
1027
&pend_tcp->pi->addr, comm_tcp, NULL, w->sq->zone,
usr.sbin/unbound/services/outside_network.c
1028
w->sq->zonelen, &tmp);
usr.sbin/unbound/services/outside_network.c
1462
log_assert(!pend->sq->busy);
usr.sbin/unbound/services/outside_network.c
1463
pend->sq->busy = 1;
usr.sbin/unbound/services/outside_network.c
1474
pend->sq->busy = 0;
usr.sbin/unbound/services/outside_network.c
1838
struct serviced_query* sq = (struct serviced_query*)node;
usr.sbin/unbound/services/outside_network.c
1839
alloc_reg_release(sq->alloc, sq->region);
usr.sbin/unbound/services/outside_network.c
1840
if(sq->timer)
usr.sbin/unbound/services/outside_network.c
1841
comm_timer_delete(sq->timer);
usr.sbin/unbound/services/outside_network.c
1842
free(sq);
usr.sbin/unbound/services/outside_network.c
2218
struct outside_network* outnet = pend->sq->outnet;
usr.sbin/unbound/services/outside_network.c
2267
pend->sq->zone, pend->sq->zonelen, packet);
usr.sbin/unbound/services/outside_network.c
2274
pending_udp_query(struct serviced_query* sq, struct sldns_buffer* packet,
usr.sbin/unbound/services/outside_network.c
2279
pend->outnet = sq->outnet;
usr.sbin/unbound/services/outside_network.c
2280
pend->sq = sq;
usr.sbin/unbound/services/outside_network.c
2281
pend->addrlen = sq->addrlen;
usr.sbin/unbound/services/outside_network.c
2282
memmove(&pend->addr, &sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
2286
pend->timer = comm_timer_create(sq->outnet->base, pending_udp_timer_cb,
usr.sbin/unbound/services/outside_network.c
2293
if(sq->outnet->unused_fds == NULL) {
usr.sbin/unbound/services/outside_network.c
2306
if(sq->outnet->udp_wait_last)
usr.sbin/unbound/services/outside_network.c
2307
sq->outnet->udp_wait_last->next_waiting = pend;
usr.sbin/unbound/services/outside_network.c
2309
sq->outnet->udp_wait_first = pend;
usr.sbin/unbound/services/outside_network.c
2310
sq->outnet->udp_wait_last = pend;
usr.sbin/unbound/services/outside_network.c
2313
log_assert(!sq->busy);
usr.sbin/unbound/services/outside_network.c
2314
sq->busy = 1;
usr.sbin/unbound/services/outside_network.c
2316
pending_delete(sq->outnet, pend);
usr.sbin/unbound/services/outside_network.c
2319
sq->busy = 0;
usr.sbin/unbound/services/outside_network.c
2434
pending_tcp_query(struct serviced_query* sq, sldns_buffer* packet,
usr.sbin/unbound/services/outside_network.c
2437
struct pending_tcp* pend = sq->outnet->tcp_free;
usr.sbin/unbound/services/outside_network.c
2449
reuse = reuse_tcp_find(sq->outnet, &sq->addr, sq->addrlen,
usr.sbin/unbound/services/outside_network.c
2450
sq->ssl_upstream);
usr.sbin/unbound/services/outside_network.c
2455
reuse_tcp_lru_touch(sq->outnet, reuse);
usr.sbin/unbound/services/outside_network.c
2464
reuse_tcp_close_oldest(sq->outnet);
usr.sbin/unbound/services/outside_network.c
2465
pend = sq->outnet->tcp_free;
usr.sbin/unbound/services/outside_network.c
2475
if(!(w->timer = comm_timer_create(sq->outnet->base, outnet_tcptimer, w))) {
usr.sbin/unbound/services/outside_network.c
2482
w->id = tcp_select_id(sq->outnet, reuse);
usr.sbin/unbound/services/outside_network.c
2484
memcpy(&w->addr, &sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
2485
w->addrlen = sq->addrlen;
usr.sbin/unbound/services/outside_network.c
2486
w->outnet = sq->outnet;
usr.sbin/unbound/services/outside_network.c
2491
w->ssl_upstream = sq->ssl_upstream;
usr.sbin/unbound/services/outside_network.c
2492
w->tls_auth_name = sq->tls_auth_name;
usr.sbin/unbound/services/outside_network.c
2500
w->sq = NULL;
usr.sbin/unbound/services/outside_network.c
2531
memcpy(&pend->reuse.addr, &sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
2532
pend->reuse.addrlen = sq->addrlen;
usr.sbin/unbound/services/outside_network.c
2539
if(sq->outnet->dtenv &&
usr.sbin/unbound/services/outside_network.c
2540
(sq->outnet->dtenv->log_resolver_query_messages ||
usr.sbin/unbound/services/outside_network.c
2541
sq->outnet->dtenv->log_forwarder_query_messages)) {
usr.sbin/unbound/services/outside_network.c
2545
dt_msg_send_outside_query(sq->outnet->dtenv, &sq->addr,
usr.sbin/unbound/services/outside_network.c
2546
&pend->pi->addr, comm_tcp, NULL, sq->zone,
usr.sbin/unbound/services/outside_network.c
2547
sq->zonelen, &tmp);
usr.sbin/unbound/services/outside_network.c
2556
w->sq = sq;
usr.sbin/unbound/services/outside_network.c
2558
outnet_waiting_tcp_list_add(sq->outnet, w, 1);
usr.sbin/unbound/services/outside_network.c
2602
struct serviced_query* sq = (struct serviced_query*)arg;
usr.sbin/unbound/services/outside_network.c
2603
struct outside_network* outnet = sq->outnet;
usr.sbin/unbound/services/outside_network.c
2607
if(!sq->cblist)
usr.sbin/unbound/services/outside_network.c
2610
if(outnet->do_udp && !(sq->tcp_upstream || sq->ssl_upstream)) {
usr.sbin/unbound/services/outside_network.c
2611
if(!serviced_udp_send(sq, outnet->udp_buff))
usr.sbin/unbound/services/outside_network.c
2614
if(!serviced_tcp_send(sq, outnet->udp_buff))
usr.sbin/unbound/services/outside_network.c
2622
serviced_callbacks(sq, NETEVENT_CLOSED, NULL, NULL);
usr.sbin/unbound/services/outside_network.c
2634
struct serviced_query* sq = (struct serviced_query*)malloc(sizeof(*sq));
usr.sbin/unbound/services/outside_network.c
2639
if(!sq) {
usr.sbin/unbound/services/outside_network.c
2643
sq->node.key = sq;
usr.sbin/unbound/services/outside_network.c
2644
sq->alloc = alloc;
usr.sbin/unbound/services/outside_network.c
2645
sq->region = region;
usr.sbin/unbound/services/outside_network.c
2646
sq->qbuf = regional_alloc_init(region, sldns_buffer_begin(buff),
usr.sbin/unbound/services/outside_network.c
2648
if(!sq->qbuf) {
usr.sbin/unbound/services/outside_network.c
2650
free(sq);
usr.sbin/unbound/services/outside_network.c
2653
sq->qbuflen = sldns_buffer_limit(buff);
usr.sbin/unbound/services/outside_network.c
2654
sq->zone = regional_alloc_init(region, zone, zonelen);
usr.sbin/unbound/services/outside_network.c
2655
if(!sq->zone) {
usr.sbin/unbound/services/outside_network.c
2657
free(sq);
usr.sbin/unbound/services/outside_network.c
2660
sq->zonelen = zonelen;
usr.sbin/unbound/services/outside_network.c
2661
sq->qtype = qtype;
usr.sbin/unbound/services/outside_network.c
2662
sq->dnssec = dnssec;
usr.sbin/unbound/services/outside_network.c
2663
sq->want_dnssec = want_dnssec;
usr.sbin/unbound/services/outside_network.c
2664
sq->nocaps = nocaps;
usr.sbin/unbound/services/outside_network.c
2665
sq->tcp_upstream = tcp_upstream;
usr.sbin/unbound/services/outside_network.c
2666
sq->ssl_upstream = ssl_upstream;
usr.sbin/unbound/services/outside_network.c
2668
sq->tls_auth_name = regional_strdup(region, tls_auth_name);
usr.sbin/unbound/services/outside_network.c
2669
if(!sq->tls_auth_name) {
usr.sbin/unbound/services/outside_network.c
2671
free(sq);
usr.sbin/unbound/services/outside_network.c
2675
sq->tls_auth_name = NULL;
usr.sbin/unbound/services/outside_network.c
2677
memcpy(&sq->addr, addr, addrlen);
usr.sbin/unbound/services/outside_network.c
2678
sq->addrlen = addrlen;
usr.sbin/unbound/services/outside_network.c
2679
sq->opt_list = opt_list;
usr.sbin/unbound/services/outside_network.c
2680
sq->busy = 0;
usr.sbin/unbound/services/outside_network.c
2681
sq->timer = comm_timer_create(outnet->base, serviced_timer_cb, sq);
usr.sbin/unbound/services/outside_network.c
2682
if(!sq->timer) {
usr.sbin/unbound/services/outside_network.c
2684
free(sq);
usr.sbin/unbound/services/outside_network.c
2688
comm_timer_set(sq->timer, &t);
usr.sbin/unbound/services/outside_network.c
2689
sq->outnet = outnet;
usr.sbin/unbound/services/outside_network.c
2690
sq->cblist = NULL;
usr.sbin/unbound/services/outside_network.c
2691
sq->pending = NULL;
usr.sbin/unbound/services/outside_network.c
2692
sq->status = serviced_initial;
usr.sbin/unbound/services/outside_network.c
2693
sq->retry = 0;
usr.sbin/unbound/services/outside_network.c
2694
sq->to_be_deleted = 0;
usr.sbin/unbound/services/outside_network.c
2695
sq->padding_block_size = pad_queries_block_size;
usr.sbin/unbound/services/outside_network.c
2701
rbtree_insert(outnet->serviced, &sq->node);
usr.sbin/unbound/services/outside_network.c
2703
return sq;
usr.sbin/unbound/services/outside_network.c
2710
struct serviced_query* sq)
usr.sbin/unbound/services/outside_network.c
2735
if(pend_tcp->c->fd != -1 && sq->outnet->tcp_reuse.count <
usr.sbin/unbound/services/outside_network.c
2736
sq->outnet->tcp_reuse_max) {
usr.sbin/unbound/services/outside_network.c
2739
if(!reuse_tcp_insert(sq->outnet, pend_tcp)) {
usr.sbin/unbound/services/outside_network.c
2742
reuse_tcp_setup_timeout(pend_tcp, sq->outnet->tcp_reuse_timeout);
usr.sbin/unbound/services/outside_network.c
2750
serviced_delete(struct serviced_query* sq)
usr.sbin/unbound/services/outside_network.c
2753
if(sq->pending) {
usr.sbin/unbound/services/outside_network.c
2755
if(sq->status == serviced_query_UDP_EDNS ||
usr.sbin/unbound/services/outside_network.c
2756
sq->status == serviced_query_UDP ||
usr.sbin/unbound/services/outside_network.c
2757
sq->status == serviced_query_UDP_EDNS_FRAG ||
usr.sbin/unbound/services/outside_network.c
2758
sq->status == serviced_query_UDP_EDNS_fallback) {
usr.sbin/unbound/services/outside_network.c
2759
struct pending* p = (struct pending*)sq->pending;
usr.sbin/unbound/services/outside_network.c
2762
portcomm_loweruse(sq->outnet, p->pc);
usr.sbin/unbound/services/outside_network.c
2763
pending_delete(sq->outnet, p);
usr.sbin/unbound/services/outside_network.c
2766
outnet_send_wait_udp(sq->outnet);
usr.sbin/unbound/services/outside_network.c
2769
sq->pending;
usr.sbin/unbound/services/outside_network.c
2791
if(!reuse_tcp_remove_serviced_keep(w, sq)) {
usr.sbin/unbound/services/outside_network.c
2793
reuse_cb_and_decommission(sq->outnet,
usr.sbin/unbound/services/outside_network.c
2795
use_free_buffer(sq->outnet);
usr.sbin/unbound/services/outside_network.c
2797
sq->pending = NULL;
usr.sbin/unbound/services/outside_network.c
2800
outnet_waiting_tcp_list_remove(sq->outnet, w);
usr.sbin/unbound/services/outside_network.c
2807
serviced_node_del(&sq->node, NULL);
usr.sbin/unbound/services/outside_network.c
2850
serviced_query_udp_size(struct serviced_query* sq, enum serviced_query_status status) {
usr.sbin/unbound/services/outside_network.c
2853
if(addr_is_ip6(&sq->addr, sq->addrlen)) {
usr.sbin/unbound/services/outside_network.c
2870
serviced_encode(struct serviced_query* sq, sldns_buffer* buff, int with_edns)
usr.sbin/unbound/services/outside_network.c
2873
if(sq->outnet->use_caps_for_id && !sq->nocaps) {
usr.sbin/unbound/services/outside_network.c
2874
serviced_perturb_qname(sq->outnet->rnd, sq->qbuf, sq->qbuflen);
usr.sbin/unbound/services/outside_network.c
2879
sldns_buffer_write(buff, sq->qbuf, sq->qbuflen);
usr.sbin/unbound/services/outside_network.c
2889
edns.opt_list_out = sq->opt_list;
usr.sbin/unbound/services/outside_network.c
2891
edns.udp_size = serviced_query_udp_size(sq, sq->status);
usr.sbin/unbound/services/outside_network.c
2893
if((sq->dnssec & EDNS_DO))
usr.sbin/unbound/services/outside_network.c
2895
if((sq->dnssec & BIT_CD))
usr.sbin/unbound/services/outside_network.c
2897
if (sq->ssl_upstream && sq->padding_block_size) {
usr.sbin/unbound/services/outside_network.c
2903
edns.padding_block_size = sq->padding_block_size;
usr.sbin/unbound/services/outside_network.c
2917
serviced_udp_send(struct serviced_query* sq, sldns_buffer* buff)
usr.sbin/unbound/services/outside_network.c
2921
time_t now = *sq->outnet->now_secs;
usr.sbin/unbound/services/outside_network.c
2923
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
usr.sbin/unbound/services/outside_network.c
2924
sq->zonelen, now, &vs, &edns_lame_known, &rtt))
usr.sbin/unbound/services/outside_network.c
2926
sq->last_rtt = rtt;
usr.sbin/unbound/services/outside_network.c
2928
if(sq->status == serviced_initial) {
usr.sbin/unbound/services/outside_network.c
2930
sq->status = serviced_query_UDP_EDNS;
usr.sbin/unbound/services/outside_network.c
2932
sq->status = serviced_query_UDP;
usr.sbin/unbound/services/outside_network.c
2935
serviced_encode(sq, buff, (sq->status == serviced_query_UDP_EDNS) ||
usr.sbin/unbound/services/outside_network.c
2936
(sq->status == serviced_query_UDP_EDNS_FRAG));
usr.sbin/unbound/services/outside_network.c
2937
sq->last_sent_time = *sq->outnet->now_tv;
usr.sbin/unbound/services/outside_network.c
2938
sq->edns_lame_known = (int)edns_lame_known;
usr.sbin/unbound/services/outside_network.c
2940
sq->pending = pending_udp_query(sq, buff, rtt,
usr.sbin/unbound/services/outside_network.c
2941
serviced_udp_callback, sq);
usr.sbin/unbound/services/outside_network.c
2942
if(!sq->pending)
usr.sbin/unbound/services/outside_network.c
2999
serviced_callbacks(struct serviced_query* sq, int error, struct comm_point* c,
usr.sbin/unbound/services/outside_network.c
3003
int dobackup = (sq->cblist && sq->cblist->next); /* >1 cb*/
usr.sbin/unbound/services/outside_network.c
3014
rbtree_delete(sq->outnet->serviced, sq);
usr.sbin/unbound/services/outside_network.c
3016
sq->to_be_deleted = 1;
usr.sbin/unbound/services/outside_network.c
3018
if(sq->outnet->use_caps_for_id && error == NETEVENT_NOERROR && c &&
usr.sbin/unbound/services/outside_network.c
3019
!sq->nocaps && sq->qtype != LDNS_RR_TYPE_PTR) {
usr.sbin/unbound/services/outside_network.c
3031
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3036
!serviced_check_qname(c->buffer, sq->qbuf,
usr.sbin/unbound/services/outside_network.c
3037
sq->qbuflen)) {
usr.sbin/unbound/services/outside_network.c
3040
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3059
backup_p = regional_alloc_init(sq->region,
usr.sbin/unbound/services/outside_network.c
3066
sq->outnet->svcd_overhead = backlen;
usr.sbin/unbound/services/outside_network.c
3069
while((p=sq->cblist) != NULL) {
usr.sbin/unbound/services/outside_network.c
3070
sq->cblist = p->next; /* remove this element */
usr.sbin/unbound/services/outside_network.c
3080
sq->outnet->svcd_overhead = 0;
usr.sbin/unbound/services/outside_network.c
3083
log_assert(sq->cblist == NULL);
usr.sbin/unbound/services/outside_network.c
3084
serviced_delete(sq);
usr.sbin/unbound/services/outside_network.c
3091
struct serviced_query* sq = (struct serviced_query*)arg;
usr.sbin/unbound/services/outside_network.c
3094
struct waiting_tcp* w = (struct waiting_tcp*)sq->pending;
usr.sbin/unbound/services/outside_network.c
3102
sq->pending = NULL; /* removed after this callback */
usr.sbin/unbound/services/outside_network.c
3105
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3107
infra_update_tcp_works(sq->outnet->infra, &sq->addr,
usr.sbin/unbound/services/outside_network.c
3108
sq->addrlen, sq->zone, sq->zonelen);
usr.sbin/unbound/services/outside_network.c
3113
if(error==NETEVENT_NOERROR && pi && sq->outnet->dtenv &&
usr.sbin/unbound/services/outside_network.c
3114
(sq->outnet->dtenv->log_resolver_response_messages ||
usr.sbin/unbound/services/outside_network.c
3115
sq->outnet->dtenv->log_forwarder_response_messages)) {
usr.sbin/unbound/services/outside_network.c
3116
log_addr(VERB_ALGO, "response from upstream", &sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3118
dt_msg_send_outside_response(sq->outnet->dtenv, &sq->addr,
usr.sbin/unbound/services/outside_network.c
3119
&pi->addr, c->type, c->ssl, sq->zone, sq->zonelen, sq->qbuf,
usr.sbin/unbound/services/outside_network.c
3120
sq->qbuflen, &sq->last_sent_time, sq->outnet->now_tv,
usr.sbin/unbound/services/outside_network.c
3124
if(error==NETEVENT_NOERROR && sq->status == serviced_query_TCP_EDNS &&
usr.sbin/unbound/services/outside_network.c
3129
sq->status = serviced_query_TCP_EDNS_fallback;
usr.sbin/unbound/services/outside_network.c
3130
serviced_tcp_initiate(sq, c->buffer);
usr.sbin/unbound/services/outside_network.c
3133
sq->status == serviced_query_TCP_EDNS_fallback &&
usr.sbin/unbound/services/outside_network.c
3142
if(!sq->want_dnssec)
usr.sbin/unbound/services/outside_network.c
3143
if(!infra_edns_update(sq->outnet->infra, &sq->addr,
usr.sbin/unbound/services/outside_network.c
3144
sq->addrlen, sq->zone, sq->zonelen, -1,
usr.sbin/unbound/services/outside_network.c
3145
*sq->outnet->now_secs))
usr.sbin/unbound/services/outside_network.c
3147
sq->status = serviced_query_TCP;
usr.sbin/unbound/services/outside_network.c
3149
if(sq->tcp_upstream || sq->ssl_upstream) {
usr.sbin/unbound/services/outside_network.c
3150
struct timeval now = *sq->outnet->now_tv;
usr.sbin/unbound/services/outside_network.c
3152
if(!infra_rtt_update(sq->outnet->infra, &sq->addr,
usr.sbin/unbound/services/outside_network.c
3153
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
usr.sbin/unbound/services/outside_network.c
3154
-1, sq->last_rtt, (time_t)now.tv_sec))
usr.sbin/unbound/services/outside_network.c
3156
} else if(now.tv_sec > sq->last_sent_time.tv_sec ||
usr.sbin/unbound/services/outside_network.c
3157
(now.tv_sec == sq->last_sent_time.tv_sec &&
usr.sbin/unbound/services/outside_network.c
3158
now.tv_usec > sq->last_sent_time.tv_usec)) {
usr.sbin/unbound/services/outside_network.c
3160
int roundtime = ((int)(now.tv_sec - sq->last_sent_time.tv_sec))*1000
usr.sbin/unbound/services/outside_network.c
3161
+ ((int)now.tv_usec - (int)sq->last_sent_time.tv_usec)/1000;
usr.sbin/unbound/services/outside_network.c
3167
if(!infra_rtt_update(sq->outnet->infra, &sq->addr,
usr.sbin/unbound/services/outside_network.c
3168
sq->addrlen, sq->zone, sq->zonelen, sq->qtype,
usr.sbin/unbound/services/outside_network.c
3169
roundtime, sq->last_rtt, (time_t)now.tv_sec))
usr.sbin/unbound/services/outside_network.c
3180
memcpy(&rep->remote_addr, &sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3181
rep->remote_addrlen = sq->addrlen;
usr.sbin/unbound/services/outside_network.c
3182
serviced_callbacks(sq, error, c, rep);
usr.sbin/unbound/services/outside_network.c
3187
serviced_tcp_initiate(struct serviced_query* sq, sldns_buffer* buff)
usr.sbin/unbound/services/outside_network.c
3190
sq->status==serviced_query_TCP_EDNS?"EDNS":"");
usr.sbin/unbound/services/outside_network.c
3191
serviced_encode(sq, buff, sq->status == serviced_query_TCP_EDNS);
usr.sbin/unbound/services/outside_network.c
3192
sq->last_sent_time = *sq->outnet->now_tv;
usr.sbin/unbound/services/outside_network.c
3193
log_assert(!sq->busy);
usr.sbin/unbound/services/outside_network.c
3194
sq->busy = 1;
usr.sbin/unbound/services/outside_network.c
3195
sq->pending = pending_tcp_query(sq, buff, sq->outnet->tcp_auth_query_timeout,
usr.sbin/unbound/services/outside_network.c
3196
serviced_tcp_callback, sq);
usr.sbin/unbound/services/outside_network.c
3197
sq->busy = 0;
usr.sbin/unbound/services/outside_network.c
3198
if(!sq->pending) {
usr.sbin/unbound/services/outside_network.c
3202
serviced_callbacks(sq, NETEVENT_CLOSED, NULL, NULL);
usr.sbin/unbound/services/outside_network.c
3208
serviced_tcp_send(struct serviced_query* sq, sldns_buffer* buff)
usr.sbin/unbound/services/outside_network.c
3212
if(!infra_host(sq->outnet->infra, &sq->addr, sq->addrlen, sq->zone,
usr.sbin/unbound/services/outside_network.c
3213
sq->zonelen, *sq->outnet->now_secs, &vs, &edns_lame_known,
usr.sbin/unbound/services/outside_network.c
3216
sq->last_rtt = rtt;
usr.sbin/unbound/services/outside_network.c
3218
sq->status = serviced_query_TCP_EDNS;
usr.sbin/unbound/services/outside_network.c
3219
else sq->status = serviced_query_TCP;
usr.sbin/unbound/services/outside_network.c
3220
serviced_encode(sq, buff, sq->status == serviced_query_TCP_EDNS);
usr.sbin/unbound/services/outside_network.c
3221
sq->last_sent_time = *sq->outnet->now_tv;
usr.sbin/unbound/services/outside_network.c
3222
if(sq->tcp_upstream || sq->ssl_upstream) {
usr.sbin/unbound/services/outside_network.c
3224
if(rtt >= UNKNOWN_SERVER_NICENESS && rtt < sq->outnet->tcp_auth_query_timeout)
usr.sbin/unbound/services/outside_network.c
3225
timeout = sq->outnet->tcp_auth_query_timeout;
usr.sbin/unbound/services/outside_network.c
3227
timeout = sq->outnet->tcp_auth_query_timeout;
usr.sbin/unbound/services/outside_network.c
3229
log_assert(!sq->busy);
usr.sbin/unbound/services/outside_network.c
3230
sq->busy = 1;
usr.sbin/unbound/services/outside_network.c
3231
sq->pending = pending_tcp_query(sq, buff, timeout,
usr.sbin/unbound/services/outside_network.c
3232
serviced_tcp_callback, sq);
usr.sbin/unbound/services/outside_network.c
3233
sq->busy = 0;
usr.sbin/unbound/services/outside_network.c
3234
return sq->pending != NULL;
usr.sbin/unbound/services/outside_network.c
3279
struct serviced_query* sq = (struct serviced_query*)arg;
usr.sbin/unbound/services/outside_network.c
3280
struct outside_network* outnet = sq->outnet;
usr.sbin/unbound/services/outside_network.c
3281
struct timeval now = *sq->outnet->now_tv;
usr.sbin/unbound/services/outside_network.c
3283
struct pending* p = (struct pending*)sq->pending;
usr.sbin/unbound/services/outside_network.c
3286
sq->pending = NULL; /* removed after callback */
usr.sbin/unbound/services/outside_network.c
3288
if(sq->status == serviced_query_UDP_EDNS && sq->last_rtt < 5000 &&
usr.sbin/unbound/services/outside_network.c
3289
(serviced_query_udp_size(sq, serviced_query_UDP_EDNS_FRAG) < serviced_query_udp_size(sq, serviced_query_UDP_EDNS))) {
usr.sbin/unbound/services/outside_network.c
3291
sq->status = serviced_query_UDP_EDNS_FRAG;
usr.sbin/unbound/services/outside_network.c
3292
log_name_addr(VERB_ALGO, "try edns1xx0", sq->qbuf+10,
usr.sbin/unbound/services/outside_network.c
3293
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3294
if(!serviced_udp_send(sq, c->buffer)) {
usr.sbin/unbound/services/outside_network.c
3295
serviced_callbacks(sq, NETEVENT_CLOSED, c, rep);
usr.sbin/unbound/services/outside_network.c
3299
if(sq->status == serviced_query_UDP_EDNS_FRAG) {
usr.sbin/unbound/services/outside_network.c
3301
sq->status = serviced_query_UDP_EDNS;
usr.sbin/unbound/services/outside_network.c
3303
sq->retry++;
usr.sbin/unbound/services/outside_network.c
3304
if(!infra_rtt_update(outnet->infra, &sq->addr, sq->addrlen,
usr.sbin/unbound/services/outside_network.c
3305
sq->zone, sq->zonelen, sq->qtype, -1, sq->last_rtt,
usr.sbin/unbound/services/outside_network.c
3308
if(sq->retry < OUTBOUND_UDP_RETRY) {
usr.sbin/unbound/services/outside_network.c
3309
log_name_addr(VERB_ALGO, "retry query", sq->qbuf+10,
usr.sbin/unbound/services/outside_network.c
3310
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3311
if(!serviced_udp_send(sq, c->buffer)) {
usr.sbin/unbound/services/outside_network.c
3312
serviced_callbacks(sq, NETEVENT_CLOSED, c, rep);
usr.sbin/unbound/services/outside_network.c
3319
serviced_callbacks(sq, error, c, rep);
usr.sbin/unbound/services/outside_network.c
3329
log_addr(VERB_ALGO, "response from upstream", &sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3332
dt_msg_send_outside_response(outnet->dtenv, &sq->addr,
usr.sbin/unbound/services/outside_network.c
3333
&p->pc->pif->addr, c->type, c->ssl, sq->zone, sq->zonelen,
usr.sbin/unbound/services/outside_network.c
3334
sq->qbuf, sq->qbuflen, &sq->last_sent_time,
usr.sbin/unbound/services/outside_network.c
3335
sq->outnet->now_tv, c->buffer);
usr.sbin/unbound/services/outside_network.c
3338
if( (sq->status == serviced_query_UDP_EDNS
usr.sbin/unbound/services/outside_network.c
3339
||sq->status == serviced_query_UDP_EDNS_FRAG)
usr.sbin/unbound/services/outside_network.c
3343
|| packet_edns_malformed(c->buffer, sq->qtype)
usr.sbin/unbound/services/outside_network.c
3347
sq->status = serviced_query_UDP_EDNS_fallback;
usr.sbin/unbound/services/outside_network.c
3348
sq->retry = 0;
usr.sbin/unbound/services/outside_network.c
3349
if(!serviced_udp_send(sq, c->buffer)) {
usr.sbin/unbound/services/outside_network.c
3350
serviced_callbacks(sq, NETEVENT_CLOSED, c, rep);
usr.sbin/unbound/services/outside_network.c
3353
} else if(sq->status == serviced_query_UDP_EDNS &&
usr.sbin/unbound/services/outside_network.c
3354
!sq->edns_lame_known) {
usr.sbin/unbound/services/outside_network.c
3357
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3358
if(!infra_edns_update(outnet->infra, &sq->addr, sq->addrlen,
usr.sbin/unbound/services/outside_network.c
3359
sq->zone, sq->zonelen, 0, (time_t)now.tv_sec)) {
usr.sbin/unbound/services/outside_network.c
3362
sq->edns_lame_known = 1;
usr.sbin/unbound/services/outside_network.c
3363
} else if(sq->status == serviced_query_UDP_EDNS_fallback &&
usr.sbin/unbound/services/outside_network.c
3364
!sq->edns_lame_known && (LDNS_RCODE_WIRE(
usr.sbin/unbound/services/outside_network.c
3372
if(!sq->want_dnssec) {
usr.sbin/unbound/services/outside_network.c
3374
&sq->addr, sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3375
if(!infra_edns_update(outnet->infra, &sq->addr, sq->addrlen,
usr.sbin/unbound/services/outside_network.c
3376
sq->zone, sq->zonelen, -1, (time_t)now.tv_sec)) {
usr.sbin/unbound/services/outside_network.c
3381
"not stored because need DNSSEC for", &sq->addr,
usr.sbin/unbound/services/outside_network.c
3382
sq->addrlen);
usr.sbin/unbound/services/outside_network.c
3384
sq->status = serviced_query_UDP;
usr.sbin/unbound/services/outside_network.c
3386
if(now.tv_sec > sq->last_sent_time.tv_sec ||
usr.sbin/unbound/services/outside_network.c
3387
(now.tv_sec == sq->last_sent_time.tv_sec &&
usr.sbin/unbound/services/outside_network.c
3388
now.tv_usec > sq->last_sent_time.tv_usec)) {
usr.sbin/unbound/services/outside_network.c
3390
int roundtime = ((int)(now.tv_sec - sq->last_sent_time.tv_sec))*1000
usr.sbin/unbound/services/outside_network.c
3391
+ ((int)now.tv_usec - (int)sq->last_sent_time.tv_usec)/1000;
usr.sbin/unbound/services/outside_network.c
3397
if(!infra_rtt_update(outnet->infra, &sq->addr, sq->addrlen,
usr.sbin/unbound/services/outside_network.c
3398
sq->zone, sq->zonelen, sq->qtype, roundtime,
usr.sbin/unbound/services/outside_network.c
3399
sq->last_rtt, (time_t)now.tv_sec))
usr.sbin/unbound/services/outside_network.c
3408
if(sq->status == serviced_query_UDP_EDNS ||
usr.sbin/unbound/services/outside_network.c
3409
sq->status == serviced_query_UDP_EDNS_FRAG ||
usr.sbin/unbound/services/outside_network.c
3410
sq->status == serviced_query_UDP_EDNS_fallback)
usr.sbin/unbound/services/outside_network.c
3412
sq->status = serviced_query_TCP_EDNS;
usr.sbin/unbound/services/outside_network.c
3413
else sq->status = serviced_query_TCP;
usr.sbin/unbound/services/outside_network.c
3414
serviced_tcp_initiate(sq, c->buffer);
usr.sbin/unbound/services/outside_network.c
3418
serviced_callbacks(sq, error, c, rep);
usr.sbin/unbound/services/outside_network.c
3431
struct serviced_query* sq;
usr.sbin/unbound/services/outside_network.c
3476
sq = lookup_serviced(outnet, buff, dnssec, addr, addrlen,
usr.sbin/unbound/services/outside_network.c
3478
if(!sq) {
usr.sbin/unbound/services/outside_network.c
3503
sq = serviced_create(outnet, buff, dnssec, want_dnssec, nocaps,
usr.sbin/unbound/services/outside_network.c
3510
if(!sq) {
usr.sbin/unbound/services/outside_network.c
3518
sq->region, sizeof(*cb)))) {
usr.sbin/unbound/services/outside_network.c
3523
(void)rbtree_delete(outnet->serviced, sq);
usr.sbin/unbound/services/outside_network.c
3524
serviced_node_del(&sq->node, NULL);
usr.sbin/unbound/services/outside_network.c
3536
sq->region, sizeof(*cb)))) {
usr.sbin/unbound/services/outside_network.c
3543
cb->next = sq->cblist;
usr.sbin/unbound/services/outside_network.c
3544
sq->cblist = cb;
usr.sbin/unbound/services/outside_network.c
3545
return sq;
usr.sbin/unbound/services/outside_network.c
3550
callback_list_remove(struct serviced_query* sq, void* cb_arg)
usr.sbin/unbound/services/outside_network.c
3552
struct service_callback** pp = &sq->cblist;
usr.sbin/unbound/services/outside_network.c
3563
void outnet_serviced_query_stop(struct serviced_query* sq, void* cb_arg)
usr.sbin/unbound/services/outside_network.c
3565
if(!sq)
usr.sbin/unbound/services/outside_network.c
3567
callback_list_remove(sq, cb_arg);
usr.sbin/unbound/services/outside_network.c
3569
if(!sq->cblist && !sq->busy && !sq->to_be_deleted) {
usr.sbin/unbound/services/outside_network.c
3570
(void)rbtree_delete(sq->outnet->serviced, sq);
usr.sbin/unbound/services/outside_network.c
3571
serviced_delete(sq);
usr.sbin/unbound/services/outside_network.c
3897
struct serviced_query* sq;
usr.sbin/unbound/services/outside_network.c
3928
RBTREE_FOR(sq, struct serviced_query*, outnet->serviced) {
usr.sbin/unbound/services/outside_network.c
3929
s += sizeof(*sq) + sq->qbuflen;
usr.sbin/unbound/services/outside_network.c
3930
for(sb = sq->cblist; sb; sb = sb->next)
usr.sbin/unbound/services/outside_network.c
3937
serviced_get_mem(struct serviced_query* sq)
usr.sbin/unbound/services/outside_network.c
3941
s = sizeof(*sq) + sq->qbuflen;
usr.sbin/unbound/services/outside_network.c
3942
for(sb = sq->cblist; sb; sb = sb->next)
usr.sbin/unbound/services/outside_network.c
3944
if(sq->status == serviced_query_UDP_EDNS ||
usr.sbin/unbound/services/outside_network.c
3945
sq->status == serviced_query_UDP ||
usr.sbin/unbound/services/outside_network.c
3946
sq->status == serviced_query_UDP_EDNS_FRAG ||
usr.sbin/unbound/services/outside_network.c
3947
sq->status == serviced_query_UDP_EDNS_fallback) {
usr.sbin/unbound/services/outside_network.c
84
static void serviced_tcp_initiate(struct serviced_query* sq, sldns_buffer* buff);
usr.sbin/unbound/services/outside_network.c
94
static int serviced_udp_send(struct serviced_query* sq, sldns_buffer* buff);
usr.sbin/unbound/services/outside_network.c
97
static int serviced_tcp_send(struct serviced_query* sq, sldns_buffer* buff);
usr.sbin/unbound/services/outside_network.h
334
struct serviced_query* sq;
usr.sbin/unbound/services/outside_network.h
423
struct serviced_query* sq;
usr.sbin/unbound/services/outside_network.h
597
struct pending* pending_udp_query(struct serviced_query* sq,
usr.sbin/unbound/services/outside_network.h
613
struct waiting_tcp* pending_tcp_query(struct serviced_query* sq,
usr.sbin/unbound/services/outside_network.h
674
void outnet_serviced_query_stop(struct serviced_query* sq, void* cb_arg);
usr.sbin/unbound/services/outside_network.h
691
size_t serviced_get_mem(struct serviced_query* sq);
usr.sbin/unbound/testcode/fake_event.c
1170
pending_udp_query(struct serviced_query* sq, sldns_buffer* packet,
usr.sbin/unbound/testcode/fake_event.c
1174
sq->outnet->base;
usr.sbin/unbound/testcode/fake_event.c
1183
memcpy(&pend->addr, &sq->addr, sq->addrlen);
usr.sbin/unbound/testcode/fake_event.c
1184
pend->addrlen = sq->addrlen;
usr.sbin/unbound/testcode/fake_event.c
1220
pending_tcp_query(struct serviced_query* sq, sldns_buffer* packet,
usr.sbin/unbound/testcode/fake_event.c
1224
sq->outnet->base;
usr.sbin/unbound/testcode/fake_event.c
1233
memcpy(&pend->addr, &sq->addr, sq->addrlen);
usr.sbin/unbound/testcode/fake_event.c
1234
pend->addrlen = sq->addrlen;
usr.sbin/unbound/testcode/fake_event.c
1400
void outnet_serviced_query_stop(struct serviced_query* sq, void* cb_arg)
usr.sbin/unbound/testcode/fake_event.c
1402
struct fake_pending* pend = (struct fake_pending*)sq;