eai_to_heim_errno.c revision 72445
172445Sassar/*
272445Sassar * Copyright (c) 2000 Kungliga Tekniska H�gskolan
372445Sassar * (Royal Institute of Technology, Stockholm, Sweden).
472445Sassar * All rights reserved.
572445Sassar *
672445Sassar * Redistribution and use in source and binary forms, with or without
772445Sassar * modification, are permitted provided that the following conditions
872445Sassar * are met:
972445Sassar *
1072445Sassar * 1. Redistributions of source code must retain the above copyright
1172445Sassar *    notice, this list of conditions and the following disclaimer.
1272445Sassar *
1372445Sassar * 2. Redistributions in binary form must reproduce the above copyright
1472445Sassar *    notice, this list of conditions and the following disclaimer in the
1572445Sassar *    documentation and/or other materials provided with the distribution.
1672445Sassar *
1772445Sassar * 3. Neither the name of the Institute nor the names of its contributors
1872445Sassar *    may be used to endorse or promote products derived from this software
1972445Sassar *    without specific prior written permission.
2072445Sassar *
2172445Sassar * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
2272445Sassar * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2372445Sassar * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2472445Sassar * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
2572445Sassar * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
2672445Sassar * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
2772445Sassar * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
2872445Sassar * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
2972445Sassar * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
3072445Sassar * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
3172445Sassar * SUCH DAMAGE.
3272445Sassar */
3372445Sassar
3472445Sassar#include <krb5_locl.h>
3572445Sassar
3672445SassarRCSID("$Id: eai_to_heim_errno.c,v 1.1 2000/07/08 13:03:36 joda Exp $");
3772445Sassar
3872445Sassarkrb5_error_code
3972445Sassarkrb5_eai_to_heim_errno(int eai_errno)
4072445Sassar{
4172445Sassar    switch(eai_errno) {
4272445Sassar    case EAI_NOERROR:
4372445Sassar	return 0;
4472445Sassar    case EAI_ADDRFAMILY:
4572445Sassar	return HEIM_EAI_ADDRFAMILY;
4672445Sassar    case EAI_AGAIN:
4772445Sassar	return HEIM_EAI_AGAIN;
4872445Sassar    case EAI_BADFLAGS:
4972445Sassar	return HEIM_EAI_BADFLAGS;
5072445Sassar    case EAI_FAIL:
5172445Sassar	return HEIM_EAI_FAIL;
5272445Sassar    case EAI_FAMILY:
5372445Sassar	return HEIM_EAI_FAMILY;
5472445Sassar    case EAI_MEMORY:
5572445Sassar	return HEIM_EAI_MEMORY;
5672445Sassar    case EAI_NODATA:
5772445Sassar	return HEIM_EAI_NODATA;
5872445Sassar    case EAI_NONAME:
5972445Sassar	return HEIM_EAI_NONAME;
6072445Sassar    case EAI_SERVICE:
6172445Sassar	return HEIM_EAI_SERVICE;
6272445Sassar    case EAI_SOCKTYPE:
6372445Sassar	return HEIM_EAI_SOCKTYPE;
6472445Sassar    case EAI_SYSTEM:
6572445Sassar	return errno;
6672445Sassar    default:
6772445Sassar	return HEIM_EAI_UNKNOWN; /* XXX */
6872445Sassar    }
6972445Sassar}
70