aboutsummaryrefslogtreecommitdiff
path: root/resolv/resolv_conf.c
AgeCommit message (Collapse)Author
2017-09-06resolv: __resolv_conf_attach must not free passed conf object [BZ #22096]Florian Weimer
2017-07-04resolv: Fix resolv_conf _res matchingFlorian Weimer
A dot-less host name without an /etc/resolv.conf file caused an assertion failure in update_from_conf because the function would not deal correctly with the empty search list case. Thanks to Andreas Schwab for debugging assistence.
2017-07-04resolv: Fix improper assert in __resolv_conf_attachFlorian Weimer
2017-07-03resolv: Introduce free list for resolv_conf index slostsFlorian Weimer
2017-07-03resolv: Automatically reload a changed /etc/resolv.conf file [BZ #984]Florian Weimer
This commit enhances the stub resolver to reload the configuration in the per-thread _res object if the /etc/resolv.conf file has changed. The resolver checks whether the application has modified _res and will not overwrite the _res object in that case. The struct resolv_context mechanism is used to check the configuration file only once per name lookup.
2017-07-03resolv: Mirror the entire resolver configuration in struct resolv_confFlorian Weimer
This commit adds the remaining unchanging members (which are loaded from /etc/resolv.conf) to struct resolv_conf. The extended name server list is currently not used by the stub resolver. The switch depends on a cleanup: The _u._ext.nssocks array stores just a single socket, and needs to be replaced with a single socket value. (The compatibility gethostname implementation does not use the extended addres sort list, either. Updating the compat code is not worthwhile.)
2017-07-03resolv: Lift domain search list limits [BZ #19569] [BZ #21475]Florian Weimer
This change uses the extended resolver state in struct resolv_conf to store the search list. If applications have not patched the _res object directly, this extended search list will be used by the stub resolver during name resolution.
2017-07-03resolv: Introduce struct resolv_conf with extended resolver stateFlorian Weimer
This change provides additional resolver configuration state which is not exposed through the _res ABI. It reuses the existing initstamp field in the supposedly-private part of _res. Some effort is undertaken to avoid memory safety issues introduced by applications which directly patch the _res object. With this commit, only the initstamp field is moved into struct resolv_conf. Additional members will be added later, eventually migrating the entire resolver configuration.