mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-21 03:13:42 +08:00
54 lines
1.0 KiB
C
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";
|
|
}
|
|
}
|
|
|
|
|