• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/avahi-0.6.31/avahi-core/

Lines Matching refs:record

60     AvahiRecord *record;
77 static AvahiResponseJob* job_new(AvahiResponseScheduler *s, AvahiRecord *record, AvahiResponseJobState state) {
81 assert(record);
89 rj->record = avahi_record_ref(record);
118 avahi_record_unref(rj->record);
205 /* Try to add this record to the packet */
206 if (!avahi_dns_packet_append_record(p, rj->record, rj->flush_cache, 0))
209 /* Ok, this record will definitely be sent, so schedule the
211 avahi_server_enumerate_aux_records(s->interface->monitor->server, s->interface, rj->record, enumerate_aux_records_callback, rj);
246 size = avahi_record_get_estimate_size(rj->record) + AVAHI_DNS_PACKET_HEADER_SIZE;
276 static AvahiResponseJob* find_scheduled_job(AvahiResponseScheduler *s, AvahiRecord *record) {
280 assert(record);
285 if (avahi_record_equal_no_ttl(rj->record, record))
292 static AvahiResponseJob* find_history_job(AvahiResponseScheduler *s, AvahiRecord *record) {
296 assert(record);
301 if (avahi_record_equal_no_ttl(rj->record, record)) {
319 static AvahiResponseJob* find_suppressed_job(AvahiResponseScheduler *s, AvahiRecord *record, const AvahiAddress *querier) {
323 assert(record);
330 if (avahi_record_equal_no_ttl(rj->record, record) &&
347 int avahi_response_scheduler_post(AvahiResponseScheduler *s, AvahiRecord *record, int flush_cache, const AvahiAddress *querier, int immediately) {
353 assert(record);
355 assert(!avahi_key_is_pattern(record->key));
357 /* t = avahi_record_to_string(record); */
363 (rj = find_suppressed_job(s, record, querier)) &&
364 avahi_record_is_goodbye(record) == avahi_record_is_goodbye(rj->record) &&
365 rj->record->ttl >= record->ttl/2) {
372 if ((rj = find_history_job(s, record))) {
374 if (avahi_record_is_goodbye(record) == avahi_record_is_goodbye(rj->record) &&
375 rj->record->ttl >= record->ttl/2 &&
387 if ((rj = find_scheduled_job(s, record))) {
406 /* Update record data (just for the TTL) */
407 avahi_record_unref(rj->record);
408 rj->record = avahi_record_ref(record);
415 if (!(rj = job_new(s, record, AVAHI_SCHEDULED)))
429 void avahi_response_scheduler_incoming(AvahiResponseScheduler *s, AvahiRecord *record, int flush_cache) {
437 if ((rj = find_scheduled_job(s, record))) {
440 avahi_record_is_goodbye(record) == avahi_record_is_goodbye(rj->record) && /* both goodbye packets, or both not */
441 record->ttl >= rj->record->ttl/2) { /* sensible TTL */
451 if ((rj = find_history_job(s, record))) {
453 avahi_record_unref(rj->record);
454 rj->record = avahi_record_ref(record);
457 if (!(rj = job_new(s, record, AVAHI_DONE)))
467 void avahi_response_scheduler_suppress(AvahiResponseScheduler *s, AvahiRecord *record, const AvahiAddress *querier) {
471 assert(record);
474 if ((rj = find_scheduled_job(s, record))) {
477 avahi_record_is_goodbye(record) == avahi_record_is_goodbye(rj->record) && /* both goodbye packets, or both not */
478 record->ttl >= rj->record->ttl/2) { /* sensible TTL */
486 if ((rj = find_suppressed_job(s, record, querier))) {
489 avahi_record_unref(rj->record);
490 rj->record = avahi_record_ref(record);
495 if (!(rj = job_new(s, record, AVAHI_SUPPRESSED)))