Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2007-02-09 13:09:21 +0300
committerCorinna Vinschen <corinna@vinschen.de>2007-02-09 13:09:21 +0300
commit09928447ed4dd16ad92526a81bf065aed244d252 (patch)
tree44939fa8157bf5f06ef692ed12510ee68abee645
parent981d5b2128e2b341ee1b2c41b8ed3931417fca3b (diff)
* libc/minires-os-if.c (write_record): Handle DNS_TYPE_SRV and
some obsolete types.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/libc/minires-os-if.c17
2 files changed, 21 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 130d0b97e..a988d8c68 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,8 @@
+2007-02-09 Pierre A. Humblet <Pierre.Humblet@ieee.org>
+
+ * libc/minires-os-if.c (write_record): Handle DNS_TYPE_SRV and
+ some obsolete types.
+
2007-02-08 Corinna Vinschen <corinna@vinschen.de>
* syscalls.cc (check_shm): New static function to do path checking
diff --git a/winsup/cygwin/libc/minires-os-if.c b/winsup/cygwin/libc/minires-os-if.c
index 0f723ae34..a5ab4a4f6 100644
--- a/winsup/cygwin/libc/minires-os-if.c
+++ b/winsup/cygwin/libc/minires-os-if.c
@@ -120,10 +120,13 @@ static u_char * write_record(unsigned char * ptr, PDNS_RECORD rr, unsigned char
}
break;
case DNS_TYPE_MINFO:
+ case DNS_TYPE_RP:
PUTDOMAIN(rr->Data.MINFO.pNameMailbox, ptr);
PUTDOMAIN(rr->Data.MINFO.pNameErrorsMailbox, ptr);
break;
case DNS_TYPE_MX:
+ case DNS_TYPE_AFSDB:
+ case DNS_TYPE_RT:
if (ptr + 2 > EndPtr)
ptr += 2;
else
@@ -131,7 +134,9 @@ static u_char * write_record(unsigned char * ptr, PDNS_RECORD rr, unsigned char
PUTDOMAIN(rr->Data.MX.pNameExchange, ptr);
break;
case DNS_TYPE_HINFO:
- case DNS_TYPE_TEXT:
+ case DNS_TYPE_ISDN:
+ case DNS_TYPE_TEXT:
+ case DNS_TYPE_X25:
{
unsigned int i, len;
for (i = 0; i < rr->Data.TXT.dwStringCount; i++) {
@@ -146,6 +151,16 @@ static u_char * write_record(unsigned char * ptr, PDNS_RECORD rr, unsigned char
}
break;
}
+ case DNS_TYPE_SRV:
+ if (ptr + 6 > EndPtr)
+ ptr += 6;
+ else {
+ PUTSHORT(rr->Data.SRV.wPriority, ptr);
+ PUTSHORT(rr->Data.SRV.wWeight, ptr);
+ PUTSHORT(rr->Data.SRV.wPort, ptr);
+ }
+ PUTDOMAIN(rr->Data.SRV.pNameTarget, ptr);
+ break;
default:
{
unsigned int len = rr->wDataLength;