/*
* Copyright 2011 Oracle. All rights reserved.
*
* This file is part of fedfs-utils.
*
* fedfs-utils is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2.0 as
* published by the Free Software Foundation.
*
* fedfs-utils is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License version 2.0 for more details.
*
* You should have received a copy of the GNU General Public License
* version 2.0 along with fedfs-utils. If not, see:
*
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
*/
#ifndef _FEDFS_GETSRVINFO_H_
#define _FEDFS_GETSRVINFO_H_
/**
* Single list element containing SRV record data
*/
struct srvinfo {
struct srvinfo *si_next;
char *si_target;
unsigned short si_priority;
unsigned short si_weight;
unsigned short si_port;
};
enum {
ESI_SUCCESS = 0,
ESI_NONAME = -2,
ESI_AGAIN = -3,
ESI_FAIL = -4,
ESI_NODATA = -5,
ESI_SERVICE = -8,
ESI_MEMORY = -10,
ESI_SYSTEM = -11,
ESI_PARSE = -1000,
};
int getsrvinfo(const char *srvname, const char *domainname,
struct srvinfo **si);
void freesrvinfo(struct srvinfo *si);
const char *gsi_strerror(int status);
#endif /* !_FEDFS_GETSRVINFO_H_ */