• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/ap/gpl/iserver/avahi-0.6.25/avahi-core/

Lines Matching defs:qj

82     AvahiQueryJob *qj;
87 if (!(qj = avahi_new(AvahiQueryJob, 1))) {
92 qj->scheduler = s;
93 qj->key = avahi_key_ref(key);
94 qj->time_event = NULL;
95 qj->n_posted = 1;
96 qj->id = s->next_id++;
98 if ((qj->done = done))
99 AVAHI_LLIST_PREPEND(AvahiQueryJob, jobs, s->history, qj);
101 AVAHI_LLIST_PREPEND(AvahiQueryJob, jobs, s->jobs, qj);
103 return qj;
106 static void job_free(AvahiQueryScheduler *s, AvahiQueryJob *qj) {
108 assert(qj);
110 if (qj->time_event)
111 avahi_time_event_free(qj->time_event);
113 if (qj->done)
114 AVAHI_LLIST_REMOVE(AvahiQueryJob, jobs, s->history, qj);
116 AVAHI_LLIST_REMOVE(AvahiQueryJob, jobs, s->jobs, qj);
118 avahi_key_unref(qj->key);
119 avahi_free(qj);
124 static void job_set_elapse_time(AvahiQueryScheduler *s, AvahiQueryJob *qj, unsigned msec, unsigned jitter) {
128 assert(qj);
132 if (qj->time_event)
133 avahi_time_event_update(qj->time_event, &tv);
135 qj->time_event = avahi_time_event_new(s->time_event_queue, &tv, elapse_callback, qj);
138 static void job_mark_done(AvahiQueryScheduler *s, AvahiQueryJob *qj) {
140 assert(qj);
142 assert(!qj->done);
144 AVAHI_LLIST_REMOVE(AvahiQueryJob, jobs, s->jobs, qj);
145 AVAHI_LLIST_PREPEND(AvahiQueryJob, jobs, s->history, qj);
147 qj->done = 1;
149 job_set_elapse_time(s, qj, AVAHI_QUERY_HISTORY_MSEC, 0);
150 gettimeofday(&qj->delivery, NULL);
214 static int packet_add_query_job(AvahiQueryScheduler *s, AvahiDnsPacket *p, AvahiQueryJob *qj) {
217 assert(qj);
219 if (!avahi_dns_packet_append_key(p, qj->key, 0))
223 avahi_cache_walk(s->interface->cache, qj->key, known_answer_walk_callback, s);
225 job_mark_done(s, qj);
276 AvahiQueryJob *qj = data;
282 assert(qj);
283 s = qj->scheduler;
285 if (qj->done) {
287 job_free(s, qj);
296 b = packet_add_query_job(s, p, qj);
316 AvahiQueryJob *qj;
321 for (qj = s->jobs; qj; qj = qj->jobs_next) {
322 assert(!qj->done);
324 if (avahi_key_equal(qj->key, key))
325 return qj;
332 AvahiQueryJob *qj;
337 for (qj = s->history; qj; qj = qj->jobs_next) {
338 assert(qj->done);
340 if (avahi_key_equal(qj->key, key)) {
343 if (avahi_age(&qj->delivery) > AVAHI_QUERY_HISTORY_MSEC*1000) {
345 job_free(s, qj);
349 return qj;
358 AvahiQueryJob *qj;
363 if ((qj = find_history_job(s, key)))
368 if ((qj = find_scheduled_job(s, key))) {
371 if (avahi_timeval_compare(&tv, &qj->delivery) < 0) {
374 qj->delivery = tv;
375 avahi_time_event_update(qj->time_event, &qj->delivery);
378 qj->n_posted++;
382 if (!(qj = job_new(s, key, 0)))
385 qj->delivery = tv;
386 qj->time_event = avahi_time_event_new(s->time_event_queue, &qj->delivery, elapse_callback, qj);
390 *ret_id = qj->id;
396 AvahiQueryJob *qj;
405 if ((qj = find_scheduled_job(s, key))) {
406 job_mark_done(s, qj);
412 if (!(qj = find_history_job(s, key)))
413 if (!(qj = job_new(s, key, 1)))
416 gettimeofday(&qj->delivery, NULL);
417 job_set_elapse_time(s, qj, AVAHI_QUERY_HISTORY_MSEC, 0);
421 AvahiQueryJob *qj;
429 for (qj = s->jobs; qj; qj = qj->jobs_next) {
430 assert(!qj->done);
432 if (qj->id == id) {
435 assert(qj->n_posted >= 1);
437 if (--qj->n_posted <= 0) {
445 job_free(s, qj);