maphints()
maphints(void)
maphints(){	caddr_t		addr;	if ((hfd = open(_PATH_LD_HINTS, O_RDONLY, 0)) == -1) {		hheader = (struct hints_header *)-1;		return;	}	hsize = PAGSIZ;	addr = mmap(0, hsize, PROT_READ, MAP_COPY, hfd, 0);	if (addr == (caddr_t)-1) {		close(hfd);		hheader = (struct hints_header *)-1;		return;	}	hheader = (struct hints_header *)addr;	if (HH_BADMAG(*hheader)) {		munmap(addr, hsize);		close(hfd);		hheader = (struct hints_header *)-1;		return;	}	if (hheader->hh_version != LD_HINTS_VERSION_1 &&	    hheader->hh_version != LD_HINTS_VERSION_2) {		munmap(addr, hsize);		close(hfd);		hheader = (struct hints_header *)-1;		return;	}	if (hheader->hh_ehints > hsize) {		if (mmap(addr+hsize, hheader->hh_ehints - hsize,				PROT_READ, MAP_COPY|MAP_FIXED,				hfd, hsize) != (caddr_t)(addr+hsize)) {			munmap((caddr_t)hheader, hsize);			close(hfd);			hheader = (struct hints_header *)-1;			return;		}	}	hbuckets = (struct hints_bucket *)(addr + hheader->hh_hashtab);	hstrtab = (char *)(addr + hheader->hh_strtab);	if (hheader->hh_version >= LD_HINTS_VERSION_2)		hint_search_path = hstrtab + hheader->hh_dirlist;}