mirror of https://github.com/getdnsapi/getdns.git
Merge branch 'develop' of github.com:verisign/getdns into develop
This commit is contained in:
commit
bfeb001850
|
@ -37,9 +37,6 @@ example:
|
||||||
test:
|
test:
|
||||||
cd src && $(MAKE) $@
|
cd src && $(MAKE) $@
|
||||||
|
|
||||||
example:
|
|
||||||
cd src && $(MAKE) $@
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
cd src && $(MAKE) $@
|
cd src && $(MAKE) $@
|
||||||
cd doc && $(MAKE) $@
|
cd doc && $(MAKE) $@
|
||||||
|
|
|
@ -52,16 +52,13 @@ default: all
|
||||||
|
|
||||||
all: libgetdns.la
|
all: libgetdns.la
|
||||||
|
|
||||||
example:
|
|
||||||
cd example && $(MAKE) $@
|
|
||||||
|
|
||||||
install: libgetdns.la
|
install: libgetdns.la
|
||||||
$(INSTALL) -m 755 -d $(DESTDIR)$(includedir)
|
$(INSTALL) -m 755 -d $(DESTDIR)$(includedir)
|
||||||
$(INSTALL) -m 755 -d $(DESTDIR)$(includedir)/getdns
|
$(INSTALL) -m 755 -d $(DESTDIR)$(includedir)/getdns
|
||||||
$(INSTALL) -m 644 $(srcdir)/getdns/getdns.h $(DESTDIR)$(includedir)/getdns/getdns.h
|
$(INSTALL) -m 644 $(srcdir)/getdns/getdns.h $(DESTDIR)$(includedir)/getdns/getdns.h
|
||||||
ifeq ($(have_libevent),1)
|
ifeq ($(have_libevent),1)
|
||||||
$(INSTALL) -m 644 $(srcdir)/getdns/getdns_ext_libevent.h $(DESTDIR)$(includedir)/getdns/
|
$(INSTALL) -m 644 $(srcdir)/getdns/getdns_ext_libevent.h $(DESTDIR)$(includedir)/getdns/
|
||||||
endif
|
endif
|
||||||
$(INSTALL) -m 755 -d $(DESTDIR)$(libdir)
|
$(INSTALL) -m 755 -d $(DESTDIR)$(libdir)
|
||||||
$(LIBTOOL) --mode=install cp libgetdns.la $(DESTDIR)$(libdir)
|
$(LIBTOOL) --mode=install cp libgetdns.la $(DESTDIR)$(libdir)
|
||||||
$(LIBTOOL) --mode=finish $(DESTDIR)$(libdir)
|
$(LIBTOOL) --mode=finish $(DESTDIR)$(libdir)
|
||||||
|
@ -79,7 +76,6 @@ test:
|
||||||
example:
|
example:
|
||||||
cd example && $(MAKE) $@
|
cd example && $(MAKE) $@
|
||||||
|
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
cd test && $(MAKE) $@
|
cd test && $(MAKE) $@
|
||||||
cd example && $(MAKE) $@
|
cd example && $(MAKE) $@
|
||||||
|
|
|
@ -100,17 +100,39 @@ getdns_convert_ulabel_to_alabel(const char *ulabel)
|
||||||
int ret;
|
int ret;
|
||||||
char *buf;
|
char *buf;
|
||||||
char *prepped;
|
char *prepped;
|
||||||
|
char *prepped2;
|
||||||
|
|
||||||
if (ulabel == NULL)
|
if (ulabel == NULL)
|
||||||
return 0;
|
return 0;
|
||||||
|
prepped2 = malloc(BUFSIZ);
|
||||||
|
if(!prepped2)
|
||||||
|
return 0;
|
||||||
setlocale(LC_ALL, "");
|
setlocale(LC_ALL, "");
|
||||||
if ((prepped = stringprep_locale_to_utf8(ulabel)) == 0)
|
if ((prepped = stringprep_locale_to_utf8(ulabel)) == 0) {
|
||||||
return 0;
|
/* convert to utf8 fails, which it can, but continue anyway */
|
||||||
if ((ret = stringprep(prepped, BUFSIZ, 0, stringprep_nameprep)) != STRINGPREP_OK)
|
if(strlen(ulabel)+1 > BUFSIZ) {
|
||||||
return 0;
|
free(prepped2);
|
||||||
if ((ret = idna_to_ascii_8z(prepped, &buf, 0)) != IDNA_SUCCESS) {
|
return 0;
|
||||||
return 0;
|
}
|
||||||
|
memcpy(prepped2, ulabel, strlen(ulabel)+1);
|
||||||
|
} else {
|
||||||
|
if(strlen(prepped)+1 > BUFSIZ) {
|
||||||
|
free(prepped);
|
||||||
|
free(prepped2);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
memcpy(prepped2, prepped, strlen(prepped)+1);
|
||||||
|
free(prepped);
|
||||||
}
|
}
|
||||||
|
if ((ret = stringprep(prepped2, BUFSIZ, 0, stringprep_nameprep)) != STRINGPREP_OK) {
|
||||||
|
free(prepped2);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if ((ret = idna_to_ascii_8z(prepped2, &buf, 0)) != IDNA_SUCCESS) {
|
||||||
|
free(prepped2);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
free(prepped2);
|
||||||
return buf;
|
return buf;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue