⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 os_errno.c

📁 这是linux下运行的mysql软件包,可用于linux 下安装 php + mysql + apach 的网络配置
💻 C
字号:
/*- * See the file LICENSE for redistribution information. * * Copyright (c) 1999-2002 *	Sleepycat Software.  All rights reserved. */#include "db_config.h"#ifndef lintstatic const char revid[] = "$Id: os_errno.c,v 11.10 2002/07/12 04:05:00 mjc Exp $";#endif /* not lint */#include "db_int.h"/* * __os_get_errno -- *	Return the value of errno. */int__os_get_errno(){	/* This routine must be able to return the same value repeatedly. */	return (errno);}/* * __os_set_errno -- *	Set the value of errno. */void__os_set_errno(evalue)	int evalue;{	errno = evalue;}/* * __os_win32_errno -- *	Return the last Windows error as an errno. *	We give generic error returns: * *	EFAULT means Win* call failed, *	  and GetLastError provided no extra info. * *	EIO means error on Win* call. *	  and we were unable to provide a meaningful errno for this Windows *	  error.  More information is only available by setting a breakpoint *	  here. * * PUBLIC: #if defined(DB_WIN32) * PUBLIC: int __os_win32_errno __P((void)); * PUBLIC: #endif */int__os_win32_errno(void){	DWORD last_error;	int ret;	/* Ignore errno - we used to check it here. */	last_error = GetLastError();	/*	 * Take our best guess at translating some of the Windows error	 * codes.  We really care about only a few of these.	 */	switch (last_error) {	case ERROR_FILE_NOT_FOUND:	case ERROR_INVALID_DRIVE:	case ERROR_PATH_NOT_FOUND:		ret = ENOENT;		break;	case ERROR_NO_MORE_FILES:	case ERROR_TOO_MANY_OPEN_FILES:		ret = EMFILE;		break;	case ERROR_ACCESS_DENIED:		ret = EPERM;		break;	case ERROR_INVALID_HANDLE:		ret = EBADF;		break;	case ERROR_NOT_ENOUGH_MEMORY:		ret = ENOMEM;		break;	case ERROR_DISK_FULL:		ret = ENOSPC;	case ERROR_ARENA_TRASHED:	case ERROR_BAD_COMMAND:	case ERROR_BAD_ENVIRONMENT:	case ERROR_BAD_FORMAT:	case ERROR_GEN_FAILURE:	case ERROR_INVALID_ACCESS:	case ERROR_INVALID_BLOCK:	case ERROR_INVALID_DATA:	case ERROR_READ_FAULT:	case ERROR_WRITE_FAULT:		ret = EFAULT;		break;	case ERROR_FILE_EXISTS:	case ERROR_ALREADY_EXISTS:		ret = EEXIST;		break;	case ERROR_NOT_SAME_DEVICE:		ret = EXDEV;		break;	case ERROR_WRITE_PROTECT:		ret = EACCES;		break;	case ERROR_NOT_READY:		ret = EBUSY;		break;	case ERROR_LOCK_VIOLATION:	case ERROR_SHARING_VIOLATION:		ret = EBUSY;		break;	case ERROR_RETRY:		ret = EINTR;		break;	case 0:		ret = EFAULT;		break;	default:		ret = EIO;			/* Generic error. */		break;	}	return (ret);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -