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

📄 wmb_fwwebsample.c

📁 firewall PNE 3.3 source code, running at more than vxworks6.x version.
💻 C
📖 第 1 页 / 共 5 页
字号:
/* %%BeginUserCode fwWebSample_ListenerProlog *//* %%EndUserCode   fwWebSample_ListenerProlog */    if (pEmEvent->emEvent.payloadSize != sizeof(WMB_EVENT_T))        {        logMsg("Received an unknown event\n",0,0,0,0,0,0);        return;        }    switch (pEmEvent->wmbEvent.eventType)        {        case WMB_EVENT_TYPE_CONTROL:            switch (pEmEvent->wmbEvent.eventID)                {                case WMB_BACKPLANE_CREATED_EVENT:                    logMsg("Backplane created event is received. Name: %s\n", (char*)pEmEvent->wmbEvent.eventInfo,0,0,0,0,0);                    break;                case WMB_BACKPLANE_DELETED_EVENT:                    logMsg("Backplane deleted event is received. Name:  %s\n", (char*)pEmEvent->wmbEvent.eventInfo,0,0,0,0,0);                    break;                default:                    logMsg("Unknown control event is received\n",0,0,0,0,0,0);                    break;                }            break;        case WMB_EVENT_TYPE_PORTFOLIO:            switch (pEmEvent->wmbEvent.eventID)                {                case WMB_PORTFOLIO_CREATED_EVENT:                    logMsg("Portfolio registered event is received. Component: %x\n", pEmEvent->wmbEvent.eventInfo[0],0,0,0,0,0);                    break;                case WMB_PORTFOLIO_DELETED_EVENT:                    logMsg("Portfolio unregistered event is received. Component: %x\n", pEmEvent->wmbEvent.eventInfo[0],0,0,0,0,0);                    break;                default:                    logMsg("Unknown portfolio event is received\n",0,0,0,0,0,0);                    break;                }            break;        default:            logMsg("Unknown WMB event is received\n",0,0,0,0,0,0);            break;        }    fwWebScreenComponent_WmwListener(pEmEvent);  /* Pass along to the Web Listner *//* %%BeginUserCode fwWebSample_ListenerEpilog *//* %%EndUserCode   fwWebSample_ListenerEpilog */    }#endif /* __WM_EVENT_MANAGER__ *//************************************************************************** * * WMB_COMPONENT_Start - main entry point into component * * RETURNS: OK * */WMB_CID_T fwWebScreenComponentComponent = NULL;STATUS WMB_COMPONENT_Start    (    void    )    {    STATUS status = OK;/* %%BeginUserCode fwWebSample_InitProlog *//* %%EndUserCode   fwWebSample_InitProlog *//* %%BeginUserCode fwWebSample_InitBody *//* %%EndUserCode   fwWebSample_InitBody */    /* Startup a Wind River Management Backplane */     status = wmbStart        (        WMB_NAME_K,           /* Name for this backplane */        100,                  /* max registered components */        1000,                 /* max resource entries */        10,                   /* max table entries */        NULL,                 /* dereg function */        NULL,                 /* dereg cookie */        &mAccessInfo          /* access control struct */        );    if (OK != status) return status;    /* Initialize this WMB Component */    status = wmbComponentRegister        (        WMB_NAME_K,           /* Name of the target backplane */        "fwWebScreenComponent", /* Name for this component */        WMB_COMPONENT_Stop,   /* Deregister Handler */        NULL,                 /* Deregister Cookie */        &fwWebScreenComponentComponent  /* Component Structure */        );    if (OK != status) return status;    /* After WMB is started you must register with backplane */    status = wmbResourceRegister         (        "fwWebScreenComponent", /* Component Name */        "",                   /* Component Path */        mEntryTbl,            /* Resource Entry Array */        ARRAY_SIZE(mEntryTbl), /* Resource Entry Count */        NULL,                 /* Table Entry Array */        0,                    /* Resource Entry Count */        NULL                  /* Default Resource Handler */        );    if (OK != status) return status;#ifdef __WM_EVENT_MANAGER__    /* Register with the Event Manager */    fwWebScreenComponent_RegisterEvents();#endif    status = fwWebScreenComponent_Web_Start(fwWebScreenComponentComponent); /* httpd() */    if (OK != status) return status;    /* %%BeginUserCode fwWebSample_InitEpilog */    /* %%EndUserCode   fwWebSample_InitEpilog */    return OK;    }/************************************************************************** * * WMB_COMPONENT_Stop - shutdown entry point for component * * RETURNS: OK * */STATUS WMB_COMPONENT_Stop    (    void* deregCookie    )    {    STATUS status = OK;    /* %%BeginUserCode fwWebSample_ShutdownProlog */    /* %%EndUserCode   fwWebSample_ShutdownProlog */#ifdef NOT_YET    status = fwWebScreenComponent_Web_Stop(); /* httpd() */    if (OK != status) return status;#endif#ifdef __WM_EVENT_MANAGER__    /* Un-Register with the Event Manager */    fwWebScreenComponent_UnregisterEvents();#endif    if (fwWebScreenComponentComponent)        wmbComponentDeregister        (        fwWebScreenComponentComponent  /* Component Id */        );    fwWebScreenComponentComponent = NULL;    /* shutdown the Wind River Management system */    status = wmbStop        (        WMB_NAME_K            /* Backplane Id */        );    /* %%BeginUserCode fwWebSample_ShutdownEpilog */    /* %%EndUserCode   fwWebSample_ShutdownEpilog */    return status;    }/****************************************************************************** *  Resource Handler Code * */ /**************************************************************************** fwWebSample: fwWebSampleScalarHandler - Displays Wind River Management system data.**/static STATUS fwWebSampleScalarHandler    (    WMB_TID_T  tid,     /* wmb transaction pointer */    WMB_OBJ_T  obj,     /* wmb object      pointer */    COMMAND_T  command  /* transaction type (e.g. GET,SET) */    )    {    STATUS status = OK;    STATUS error  = 0;    sbyte4 nSize  = 0;/* %%BeginUserCode fwWebSampleScalar_HandlerProlog *//* %%EndUserCode   fwWebSampleScalar_HandlerProlog */    /* loop through all objects in the group linked list */    while (wmbObjectGood(obj))    {      status = OK;      error  = 0;/* %%BeginUserCode fwWebSampleScalar_HandlerInstance */      /* Preset common instance or context information *//* %%EndUserCode   fwWebSampleScalar_HandlerInstance */      /* switch on the object's enumeration ID */      switch (wmbObjectLocalGet(obj))      {                /* ================================================================= */        case WMID_IF :   /* integer (DATATYPE_INTEGER_K) : none */        {            /* %%BeginUserCode IF_Body */                    /* Note: Locking is indicated as being handled by the user */                    switch (command)            {                case CMD_GET_K:                    /* status = wmbObjectImport(obj,AddrOf_IF,4,DATATYPE_INTEGER_K); */                    break;                case CMD_NVMSET_K:                    /* status = wmbObjectExport(obj,AddrOf_IF,4,DATATYPE_INTEGER_K,&nSize); */                    break;                case CMD_GET_NEXT_K:                    /* Insert Instance Increment Code here */                            /* status = wmbObjectImport(obj,AddrOf_IF,4,DATATYPE_INTEGER_K); */                            /* Perform NEXT on instance */                    break;                case CMD_TEST_K:                    /* Insert validate test here */                            if (OK != status)                    {   wmbObjectStatusSet(obj,ERROR_GENERAL_OUT_OF_RANGE);                        return ERROR;                    }                            /* Attach undo information to transaction */                    /* wmbObjectSavedSet(obj,AddrOf_IF,4,DATATYPE_INTEGER_K); */                    break;                case CMD_COMMIT_K:                    /* status = wmbObjectExport(obj,AddrOf_IF,4,DATATYPE_INTEGER_K,&nSize); */                    break;                case CMD_UNDO_K:                    /* Retrieve undo information from transaction */                    /* wmbObjectSavedGet(obj,AddrOf_IF,4,DATATYPE_INTEGER_K); */                    break;                case CMD_COMPLETE_K:                    /* Retrieve undo information from transaction */                    wmbObjectSavedFree(obj);                    break;                default:                    wmbObjectStatusSet(obj,ERROR_TM_BAD_CMD);                      return ERROR;                    break;            }                    /* %%EndUserCode   IF_Body */        }        break;                /* ================================================================= */        case WMID_REPEAT :   /* integer (DATATYPE_INTEGER_K) : none */        {            /* %%BeginUserCode REPEAT_Body */                            switch (command)            {                case CMD_GET_K:                    status = wmbObjectImport(obj,NULL,4,DATATYPE_INTEGER_K);                    break;                case CMD_NVMSET_K:                    status = wmbObjectExport(obj,NULL,4,DATATYPE_INTEGER_K,&nSize);                    break;                case CMD_GET_NEXT_K:                    /* Insert Instance Increment Code here */

⌨️ 快捷键说明

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