comparison src/core/ngx_resolver.c @ 2314:52987a023486

fix compression pointer for big (>255) DNS responses
author Igor Sysoev <igor@sysoev.ru>
date Mon, 17 Nov 2008 08:04:41 +0000
parents ec97eb9a8038
children 30ec8c5ac75b
comparison
equal deleted inserted replaced
2313:b56a9ba4824d 2314:52987a023486
1864 if (n == 0) { 1864 if (n == 0) {
1865 goto done; 1865 goto done;
1866 } 1866 }
1867 1867
1868 if (n & 0xc0) { 1868 if (n & 0xc0) {
1869 n = (n & 0x3f << 8) + *p; 1869 n = ((n & 0x3f) << 8) + *p;
1870 p = &buf[n]; 1870 p = &buf[n];
1871 1871
1872 } else { 1872 } else {
1873 len += 1 + n; 1873 len += 1 + n;
1874 p = &p[n]; 1874 p = &p[n];
1914 if (n != 0) { 1914 if (n != 0) {
1915 *dst++ = '.'; 1915 *dst++ = '.';
1916 } 1916 }
1917 1917
1918 } else { 1918 } else {
1919 n = (n & 0x3f << 8) + *src; 1919 n = ((n & 0x3f) << 8) + *src;
1920 src = &buf[n]; 1920 src = &buf[n];
1921 1921
1922 n = *src++; 1922 n = *src++;
1923 } 1923 }
1924 1924