libidn  1.25
strerror-punycode.c
Go to the documentation of this file.
00001 /* strerror-punycode.c --- Convert punycode errors into text.
00002    Copyright (C) 2004-2012 Simon Josefsson
00003 
00004    This file is part of GNU Libidn.
00005 
00006    GNU Libidn is free software: you can redistribute it and/or
00007    modify it under the terms of either:
00008 
00009      * the GNU Lesser General Public License as published by the Free
00010        Software Foundation; either version 3 of the License, or (at
00011        your option) any later version.
00012 
00013    or
00014 
00015      * the GNU General Public License as published by the Free
00016        Software Foundation; either version 2 of the License, or (at
00017        your option) any later version.
00018 
00019    or both in parallel, as here.
00020 
00021    GNU Libidn is distributed in the hope that it will be useful,
00022    but WITHOUT ANY WARRANTY; without even the implied warranty of
00023    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00024    General Public License for more details.
00025 
00026    You should have received copies of the GNU General Public License and
00027    the GNU Lesser General Public License along with this program.  If
00028    not, see <http://www.gnu.org/licenses/>. */
00029 
00030 #ifdef HAVE_CONFIG_H
00031 # include "config.h"
00032 #endif
00033 
00034 #include "punycode.h"
00035 
00036 #include "gettext.h"
00037 #define _(String) dgettext (PACKAGE, String)
00038 
00056 const char *
00057 punycode_strerror (Punycode_status rc)
00058 {
00059   const char *p;
00060 
00061   bindtextdomain (PACKAGE, LOCALEDIR);
00062 
00063   switch (rc)
00064     {
00065     case PUNYCODE_SUCCESS:
00066       p = _("Success");
00067       break;
00068 
00069     case PUNYCODE_BAD_INPUT:
00070       p = _("Invalid input");
00071       break;
00072 
00073     case PUNYCODE_BIG_OUTPUT:
00074       p = _("Output would exceed the buffer space provided");
00075       break;
00076 
00077     case PUNYCODE_OVERFLOW:
00078       p = _("String size limit exceeded");
00079       break;
00080 
00081     default:
00082       p = _("Unknown error");
00083       break;
00084     }
00085 
00086   return p;
00087 }