rpms/avahi/OLPC-2 avahi-0.6.20-cleanup-dns-compression-table.patch, NONE, 1.1 avahi-0.6.20-make-known-answers-not-conflict.patch, NONE, 1.1 avahi.spec, 1.81, 1.82

Simon McVittie (smcv) fedora-extras-commits at redhat.com
Tue Oct 30 09:27:17 UTC 2007


Author: smcv

Update of /cvs/pkgs/rpms/avahi/OLPC-2
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv5565

Modified Files:
	avahi.spec 
Added Files:
	avahi-0.6.20-cleanup-dns-compression-table.patch 
	avahi-0.6.20-make-known-answers-not-conflict.patch 
Log Message:
Sync fc7 version of Avahi into olpc2, since Joyride was shipping the fc7 version anyway.
Avahi is now built in Koji for OLPC-2 (laptop.org #4337)


avahi-0.6.20-cleanup-dns-compression-table.patch:

--- NEW FILE avahi-0.6.20-cleanup-dns-compression-table.patch ---
Index: avahi-core/dns.c
===================================================================
--- avahi-core/dns.c	(revision 1492)
+++ avahi-core/dns.c	(revision 1497)
@@ -153,6 +153,19 @@
     avahi_dns_packet_set_field(p, idx, avahi_dns_packet_get_field(p, idx) + 1);
 }   
 
+
+static void name_table_cleanup(void *key, void *value, void *user_data) {
+    AvahiDnsPacket *p = user_data;
+    
+    if ((uint8_t*) value >= AVAHI_DNS_PACKET_DATA(p) + p->size)
+        avahi_hashmap_remove(p->name_table, key);
+}
+
+void avahi_dns_packet_cleanup_name_table(AvahiDnsPacket *p) {
+    if (p->name_table)
+        avahi_hashmap_foreach(p->name_table, name_table_cleanup, p);
+}
+
 uint8_t* avahi_dns_packet_append_name(AvahiDnsPacket *p, const char *name) {
     uint8_t *d, *saved_ptr = NULL;
     size_t saved_size;
@@ -216,6 +229,8 @@
 
 fail:
     p->size = saved_size;
+    avahi_dns_packet_cleanup_name_table(p);
+
     return NULL;
 }
 
@@ -685,6 +700,8 @@
         !avahi_dns_packet_append_uint16(p, k->type) ||
         !avahi_dns_packet_append_uint16(p, k->clazz | (unicast_response ? AVAHI_DNS_UNICAST_RESPONSE : 0))) {
         p->size = size;
+        avahi_dns_packet_cleanup_name_table(p);
+
         return NULL;
     }
 
@@ -799,6 +816,8 @@
 
 fail:
     p->size = size;
+    avahi_dns_packet_cleanup_name_table(p);
+
     return NULL;
 }
 
Index: avahi-core/dns.h
===================================================================
--- avahi-core/dns.h	(revision 1492)
+++ avahi-core/dns.h	(revision 1497)
@@ -52,6 +52,8 @@
 
 uint8_t *avahi_dns_packet_extend(AvahiDnsPacket *p, size_t l);
 
+void avahi_dns_packet_cleanup_name_table(AvahiDnsPacket *p);
+
 uint8_t *avahi_dns_packet_append_uint16(AvahiDnsPacket *p, uint16_t v);
 uint8_t *avahi_dns_packet_append_uint32(AvahiDnsPacket *p, uint32_t v);
 uint8_t *avahi_dns_packet_append_name(AvahiDnsPacket *p, const char *name);

avahi-0.6.20-make-known-answers-not-conflict.patch:

--- NEW FILE avahi-0.6.20-make-known-answers-not-conflict.patch ---
Index: /trunk/avahi-core/server.c
===================================================================
--- /trunk/avahi-core/server.c (revision 1463)
+++ /trunk/avahi-core/server.c (revision 1496)
@@ -611,9 +611,7 @@
             }
             
-            if (handle_conflict(s, i, record, unique)) {
-                avahi_response_scheduler_suppress(i->response_scheduler, record, a);
-                avahi_record_list_drop(s->record_list, record);
-                avahi_cache_stop_poof(i->cache, record, a);
-            }
+            avahi_response_scheduler_suppress(i->response_scheduler, record, a);
+            avahi_record_list_drop(s->record_list, record);
+            avahi_cache_stop_poof(i->cache, record, a);
             
             avahi_record_unref(record);


Index: avahi.spec
===================================================================
RCS file: /cvs/pkgs/rpms/avahi/OLPC-2/avahi.spec,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -r1.81 -r1.82
--- avahi.spec	25 Jun 2007 19:34:41 -0000	1.81
+++ avahi.spec	30 Oct 2007 09:26:44 -0000	1.82
@@ -6,7 +6,7 @@
 %endif
 Name:           avahi
 Version:        0.6.20
-Release:        3%{?dist}
+Release:        5%{?dist}
 Summary:        Local network service discovery 
 Group:          System Environment/Base
 License:        LGPL
@@ -36,6 +36,8 @@
 Obsoletes:            howl
 Source0:        http://avahi.org/download/%{name}-%{version}.tar.gz
 # enable mono's mcs to work in beehive buildroot:
+Patch0:     avahi-0.6.20-cleanup-dns-compression-table.patch
+Patch1:     avahi-0.6.20-make-known-answers-not-conflict.patch
 Patch6:     avahi-0.6.3-MONO_SHARED_DIR.patch
 
 %description
@@ -184,6 +186,7 @@
 %package   autoipd
 Summary:   Link-local IPv4 address automatic configuration daemon (IPv4LL)
 Group:     System Environment/Base
+Requires(pre):        shadow-utils
 
 %description autoipd
 avahi-autoipd implements IPv4LL, "Dynamic Configuration of IPv4
@@ -206,6 +209,8 @@
 %prep
 %setup -q
 %if %{WITH_MONO}
+%patch0 -p0 -b .cleanup-dns-compression-table
+%patch1 -p2 -b .make-known-answers-not-conflict
 %patch6 -p1 -b .MONO_SHARED_DIR
 %endif
 
@@ -461,6 +466,13 @@
 %endif
 
 %changelog
+* Wed Jul 11 2007 Lennart Poettering <lpoetter at redhat.com> - 0.6.20-5
+- add two patches which are important to get RR updating work properly. 
+  Will be part of upstream 0.6.21
+
+* Thu Jul  5 2007 Dan Williams <dcbw at redhat.com> - 0.6.20-4
+- Add Requires(pre): shadow-utils for avahi-autoipd package
+
 * Mon Jun 25 2007 Bill Nottingham <notting at redhat.com> - 0.6.20-3
 - fix %%endif typo
 




More information about the fedora-extras-commits mailing list