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

📄 mibhr.c

📁 VxWorks操作系统下的SNMP协议以及MIB协议的实现源码,并且实现了HP标准打印类的MIB框架.
💻 C
字号:

#include "VxWorks.h"
#include "sockLib.h"
#include "inetLib.h"
#include "taskLib.h"
#include "stdioLib.h"
#include "strLib.h"
#include "ioLib.h"
#include "fioLib.h"

#include "snmp.h"

#define	_BUILD_IN_COM	1

int HRGetVar(VARLIST *pVar)
{
	int nValue;
	
	switch(pVar->oid[6])
	{
		case 3://HRDEVICE:		//{0x2b.6.1.2.1.25.3}
			switch(pVar->oid[7])
			{	//{0x2b.6.1.2.1.25.3.x}
				case 2://HRDEVICETABLE
					if(pVar->oid[8] == 1)
					{
						switch(pVar->oid[9])
						{//外置式PS
#ifndef	_BUILD_IN_COM
							case 5://HRDEVICESTATUS								
								nValue = GetPSStatusOutside();
								break;
								
							case 6://HRDEVICEERRORS:
								nValue = GetPSErrorNumOutside();				
								break;
#endif								
							case 1://HRDEVICEINDEX
							case 2://HRDEVICETYPE:
							case 3://HRDEVICEDESCR
							case 4://HRDEVICEID
							default:
								return ERROR;
						}
					}
					else
						return ERROR;
					break;
				case 5://HRPRINTERTABLE
					if(pVar->oid[8] == 1)
					{
						switch(pVar->oid[9])
						{//内置式PS
#ifndef	_BUILD_IN_COM
							case 1://HRPRINTERSTATUS:
								nValue = GetPSStatusInside();
								break;
								
							case 2://HRPRINTERDETECTEDERRORSTATE
								nValue = GetPSErrorNumInside();
								break;
#endif								
							default:
								return ERROR;
						}
					}
					else
						return ERROR;
					break;
				case 1://HRDEVICETYPES
				case 3://HRPROCESSORTABLE
				case 4://HRNETWORKTABLE
				default:
					return ERROR;
			}
			break;
		case 1://HRSYSTEM
		case 2://HRSTORAGE
		case 4://HRSWRUN
		case 5://HRSWRUNPERF
		case 6://HRSWINSTALLED
		default:
			return ERROR;
	}

	return ConvLongtoStr(pVar, nValue);
	
}

⌨️ 快捷键说明

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