root/source3/libaddns/dnserr.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2   Error codes for Linux DNS client library implementation
   3   
   4   Copyright (C) 2006 Krishna Ganugapati <krishnag@centeris.com>
   5   Copyright (C) 2006 Gerald Carter <jerry@samba.org>
   6 
   7      ** NOTE! The following LGPL license applies to the libaddns
   8      ** library. This does NOT imply that all of Samba is released
   9      ** under the LGPL
  10 
  11   This library is free software; you can redistribute it and/or
  12   modify it under the terms of the GNU Lesser General Public
  13   License as published by the Free Software Foundation; either
  14   version 2.1 of the License, or (at your option) any later version.
  15 
  16   This library is distributed in the hope that it will be useful,
  17   but WITHOUT ANY WARRANTY; without even the implied warranty of
  18   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  19   Lesser General Public License for more details.
  20 
  21   You should have received a copy of the GNU Lesser General Public
  22   License along with this library; if not, see <http://www.gnu.org/licenses/>.
  23 */
  24 
  25 #ifndef _DNSERR_H
  26 #define _DNSERR_H
  27 
  28 
  29 /* The Splint code analysis tool (http://www.splint.org.) doesn't 
  30    like immediate structures. */
  31    
  32 #ifdef _SPLINT_
  33 #undef HAVE_IMMEDIATE_STRUCTURES
  34 #endif
  35 
  36 /* Setup the DNS_ERROR typedef.  Technique takes from nt_status.h */
  37 
  38 #if defined(HAVE_IMMEDIATE_STRUCTURES)
  39 typedef struct {uint32 v;} DNS_ERROR;
  40 #define ERROR_DNS(x) ((DNS_ERROR) { x })
  41 #define ERROR_DNS_V(x) ((x).v)
  42 #else
  43 typedef uint32 DNS_ERROR;
  44 #define ERROR_DNS(x) (x)
  45 #define ERROR_DNS_V(x) (x)
  46 #endif
  47 
  48 #define ERR_DNS_IS_OK(x)   (ERROR_DNS_V(x) == 0)
  49 #define ERR_DNS_EQUAL(x,y) (ERROR_DNS_V(x) == ERROR_DNS_V(y))
  50 
  51 /*************************************************
  52  * Define the error codes here
  53  *************************************************/
  54 
  55 #define ERROR_DNS_SUCCESS               ERROR_DNS(0) 
  56 #define ERROR_DNS_RECORD_NOT_FOUND      ERROR_DNS(1)
  57 #define ERROR_DNS_BAD_RESPONSE          ERROR_DNS(2)
  58 #define ERROR_DNS_INVALID_PARAMETER     ERROR_DNS(3)
  59 #define ERROR_DNS_NO_MEMORY             ERROR_DNS(4)
  60 #define ERROR_DNS_INVALID_NAME_SERVER   ERROR_DNS(5)
  61 #define ERROR_DNS_CONNECTION_FAILED     ERROR_DNS(6)
  62 #define ERROR_DNS_GSS_ERROR             ERROR_DNS(7)
  63 #define ERROR_DNS_INVALID_NAME          ERROR_DNS(8)
  64 #define ERROR_DNS_INVALID_MESSAGE       ERROR_DNS(9)
  65 #define ERROR_DNS_SOCKET_ERROR          ERROR_DNS(10)
  66 #define ERROR_DNS_UPDATE_FAILED         ERROR_DNS(11)
  67 
  68 /*
  69  * About to be removed, transitional error
  70  */
  71 #define ERROR_DNS_UNSUCCESSFUL          ERROR_DNS(999)
  72 
  73 
  74 #define ERROR_BAD_RESPONSE              1
  75 #define ERROR_RECORD_NOT_FOUND          2
  76 #define ERROR_OUTOFMEMORY               8
  77 #if !defined(ERROR_INVALID_PARAMETER)
  78 #define ERROR_INVALID_PARAMETER         87
  79 #endif
  80 
  81 /*
  82  * About to be removed, transitional error
  83  */
  84 #define ERROR_UNSUCCESSFUL 999
  85 
  86 #endif  /* _DNSERR_H */
  87 

/* [<][>][^][v][top][bottom][index][help] */