netcdf-c/libcdmr/ast_util.c
2011-04-16 20:56:36 +00:00

54 lines
1.0 KiB
C

#include "config.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <stdarg.h>
#include <ast_runtime.h>
#include <ast_internal.h>
#include <ast_util.h>
static int logstate = 1;
void ast_logset(int tf) {logstate = tf;}
void
ast_log(const char* fmt, ...)
{
va_list ap;
if(logstate == 1) {
va_start(ap, fmt);
vfprintf(stderr,fmt,ap);
}
}
/* Given an error number, return an error message. */
const char *
ast_strerror(ast_err err)
{
/* System error? */
if(err > 0) {
const char *cp = (const char *) strerror(err);
if(cp == NULL)
return "Unknown Error";
return cp;
}
/* If we're here, this is a netcdf error code. */
switch(err) {
case AST_NOERR: return "No error";
case AST_ENOMEM: return "Out of memory";
case AST_EFAIL: return "AST Failure";
case AST_EOF: return "End of file";
case AST_EIO: return "IO error";
case AST_ECURL: return "Libcurl error";
default:
return "Unknown Error";
}
}