diff options
author | Ross Burton <ross@openedhand.com> | 2005-10-10 14:02:25 +0000 |
---|---|---|
committer | Ross Burton <ross@openedhand.com> | 2005-10-10 14:02:25 +0000 |
commit | ab4b8cbf3bf087c3492078e045fe9801a8201611 (patch) | |
tree | c7059bb3878c55ccc064df7d1e6dc6a684dea060 /openembedded/packages/avahi/avahi-0.5.2 | |
parent | bfea2526434422e8bd1aff9189e41c49bd7127d9 (diff) | |
download | openembedded-core-ab4b8cbf3bf087c3492078e045fe9801a8201611.tar.gz openembedded-core-ab4b8cbf3bf087c3492078e045fe9801a8201611.tar.bz2 openembedded-core-ab4b8cbf3bf087c3492078e045fe9801a8201611.tar.xz openembedded-core-ab4b8cbf3bf087c3492078e045fe9801a8201611.zip |
Upgrade avahi to 0.5.2
git-svn-id: https://svn.o-hand.com/repos/poky@131 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'openembedded/packages/avahi/avahi-0.5.2')
-rw-r--r-- | openembedded/packages/avahi/avahi-0.5.2/alignment-fix.patch | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/openembedded/packages/avahi/avahi-0.5.2/alignment-fix.patch b/openembedded/packages/avahi/avahi-0.5.2/alignment-fix.patch new file mode 100644 index 000000000..fc23f2375 --- /dev/null +++ b/openembedded/packages/avahi/avahi-0.5.2/alignment-fix.patch @@ -0,0 +1,96 @@ +--- avahi-0.5/avahi-core/dns.c.orig 2005-09-23 16:35:02 +0200 ++++ avahi-0.5/avahi-core/dns.c 2005-09-23 16:35:07 +0200 +@@ -177,11 +177,13 @@ + assert(idx < p->size); + + if (idx < 0x4000) { +- uint16_t *t; +- if (!(t = (uint16_t*) avahi_dns_packet_extend(p, sizeof(uint16_t)))) ++ uint8_t *t; ++ ++ if (!(t = (uint8_t*) avahi_dns_packet_extend(p, sizeof(uint16_t)))) + return NULL; + +- *t = htons((0xC000 | idx)); ++ t[0] = (uint8_t) ((0xC000 | idx) >> 8); ++ t[1] = (uint8_t) idx; + return saved_ptr; + } + } +@@ -223,7 +225,8 @@ + if (!(d = avahi_dns_packet_extend(p, sizeof(uint16_t)))) + return NULL; + +- *((uint16_t*) d) = htons(v); ++ d[0] = (uint8_t) (v >> 8); ++ d[1] = (uint8_t) v; + return d; + } + +@@ -234,7 +237,10 @@ + if (!(d = avahi_dns_packet_extend(p, sizeof(uint32_t)))) + return NULL; + +- *((uint32_t*) d) = htonl(v); ++ d[0] = (uint8_t) (v >> 24); ++ d[1] = (uint8_t) (v >> 16); ++ d[2] = (uint8_t) (v >> 8); ++ d[3] = (uint8_t) v; + + return d; + } +@@ -385,26 +391,42 @@ + } + + int avahi_dns_packet_consume_uint16(AvahiDnsPacket *p, uint16_t *ret_v) { ++ uint8_t *d; ++ uint16_t tmp_v; ++ + assert(p); + assert(ret_v); + + if (p->rindex + sizeof(uint16_t) > p->size) + return -1; + +- *ret_v = ntohs(*((uint16_t*) (AVAHI_DNS_PACKET_DATA(p) + p->rindex))); ++ d = (uint8_t*) (AVAHI_DNS_PACKET_DATA(p) + p->rindex); ++ tmp_v = (d[0] << 8) | d[1]; ++ d = (uint8_t*) ret_v; ++ d[0] = ((uint8_t*)(&tmp_v))[0]; ++ d[1] = ((uint8_t*)(&tmp_v))[1]; + p->rindex += sizeof(uint16_t); + + return 0; + } + + int avahi_dns_packet_consume_uint32(AvahiDnsPacket *p, uint32_t *ret_v) { ++ uint8_t* d; ++ uint32_t tmp_v; ++ + assert(p); + assert(ret_v); + + if (p->rindex + sizeof(uint32_t) > p->size) + return -1; + +- *ret_v = ntohl(*((uint32_t*) (AVAHI_DNS_PACKET_DATA(p) + p->rindex))); ++ d = (uint8_t*) (AVAHI_DNS_PACKET_DATA(p) + p->rindex); ++ tmp_v = (d[0] << 24) | (d[1] << 16) | (d[2] << 8) | d[3]; ++ d = (uint8_t*) ret_v; ++ d[0] = ((uint8_t*)(&tmp_v))[0]; ++ d[1] = ((uint8_t*)(&tmp_v))[1]; ++ d[2] = ((uint8_t*)(&tmp_v))[2]; ++ d[3] = ((uint8_t*)(&tmp_v))[3]; + p->rindex += sizeof(uint32_t); + + return 0; +@@ -733,7 +755,8 @@ + + /* avahi_log_debug("appended %u", size); */ + +- * (uint16_t*) l = htons((uint16_t) size); ++ l[0] = (uint8_t) ((uint16_t) size >> 8); ++ l[1] = (uint8_t) ((uint16_t) size); + + return t; + |