| /* SPDX-License-Identifier: LGPL-2.1 */ | |
| /* | |
| * DNS Resolver upcall management for CIFS DFS | |
| * Handles host name to IP address resolution | |
| * | |
| * Copyright (c) International Business Machines Corp., 2008 | |
| * Author(s): Steve French (sfrench@us.ibm.com) | |
| * | |
| */ | |
| #ifndef _DNS_RESOLVE_H | |
| #define _DNS_RESOLVE_H | |
| #include <linux/net.h> | |
| #include "cifsglob.h" | |
| #include "cifsproto.h" | |
| int dns_resolve_name(const char *dom, const char *name, size_t namelen, | |
| struct sockaddr *ip_addr); | |
| static inline int dns_resolve_unc(const char *dom, const char *unc, | |
| struct sockaddr *ip_addr) | |
| { | |
| const char *name; | |
| size_t namelen; | |
| if (!unc || strlen(unc) < 3) | |
| return -EINVAL; | |
| extract_unc_hostname(unc, &name, &namelen); | |
| if (!namelen) | |
| return -EINVAL; | |
| return dns_resolve_name(dom, name, namelen, ip_addr); | |
| } | |
| #endif /* _DNS_RESOLVE_H */ |