📄 smtpclient_errno.c
字号:
/* ____ __ _ _____ ____ _ _ _ ** / ___|| \/ |_ _| _ \___| (_) ___ _ __ | |_ ** \___ \| |\/| || | | |_)/ __| | |/ _ \ '_ \| __|** ___) | | | || | | _| (__| | | __/ | | | |_ ** |____/|_| |_||_| |_| \___|_|_|\___|_| |_|\__|** ** SMTPclient -- simple SMTP client**** This program is a minimal SMTP client that takes an email** message body and passes it on to a SMTP server (default is the** MTA on the local host). Since it is completely self-supporting,** it is especially suitable for use in restricted environments.**** ======================================================================**** Copyright (c) 1997 Ralf S. Engelschall, All rights reserved.**** This program is free software; it may be redistributed and/or modified** only under the terms of either the Artistic License or the GNU General** Public License, which may be found in the SMTP source distribution.** Look at the file COPYING. **** This program is distributed in the hope that it will be useful, but** WITHOUT ANY WARRANTY; without even the implied warranty of** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the** GNU General Public License for more details.**** ======================================================================**** smtpclient_errno.c -- errno support*/#include <stdio.h>#include <sys/errno.h>#include "config.h"#ifndef HAVE_STRERROR#ifdef HAVE_SYSERRLISTextern char *sys_errlist[];extern int sys_nerr;#elsestatic char *sys_errlist[] = { /* 0 - NOERROR */ "No error status currently",/* 1 - EPERM */ "Not super-user",/* 2 - ENOENT */ "No such file or directory",/* 3 - ESRCH */ "No such process",/* 4 - EINTR */ "Interrupted system call",/* 5 - EIO */ "I/O error",/* 6 - ENXIO */ "No such device or address",/* 7 - E2BIG */ "Arg list too long",/* 8 - ENOEXEC */ "Exec format error",/* 9 - EBADF */ "Bad file number",/* 10 - ECHILD */ "No children",/* 11 - EAGAIN */ "No more processes",/* 12 - ENOMEM */ "Not enough core",/* 13 - EACCES */ "Permission denied",/* 14 - EFAULT */ "Bad address",/* 15 - ENOTBLK */ "Block device required",/* 16 - EBUSY */ "Mount device busy",/* 17 - EEXIST */ "File exists",/* 18 - EXDEV */ "Cross-device link",/* 19 - ENODEV */ "No such device",/* 20 - ENOTDIR */ "Not a directory",/* 21 - EISDIR */ "Is a directory",/* 22 - EINVAL */ "Invalid argument",/* 23 - ENFILE */ "File table overflow",/* 24 - EMFILE */ "Too many open files",/* 25 - ENOTTY */ "Not a typewriter",/* 26 - ETXTBSY */ "Text file busy",/* 27 - EFBIG */ "File too large",/* 28 - ENOSPC */ "No space left on device",/* 29 - ESPIPE */ "Illegal seek",/* 30 - EROFS */ "Read only file system",/* 31 - EMLINK */ "Too many links",/* 32 - EPIPE */ "Broken pipe",/* 33 - EDOM */ "Math arg out of domain of func",/* 34 - ERANGE */ "Math result not representable",/* 35 - ENOMSG */ "No message of desired type",/* 36 - EIDRM */ "Identifier removed" };static int sys_nerr = 37;#endif#endifchar *errorstr(int errnum){#ifdef HAVE_STRERROR extern char *strerror(); return strerror(errnum);#else static char buffer[50]; if (errnum < 0 || errnum >= sys_nerr) { sprintf(buffer, "ERR-UNKNOWN (%d)", errnum); return(buffer); } return(sys_errlist[errnum]);#endif}/*EOF*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -