zoukankan      html  css  js  c++  java
  • tr69 错误调试

    1. main/informer.c

       handleSoapMessageCallBack()

      {

            handleSoapMessage();

      }

    2. handleSoapMessage()

       {

            status = parseGeneric(NULL, soapmsg, len, &parseReq);     

           ....

           if ( runRPC() == eRPCRunFail)

       }

    3. runRPC()       include in SOAPParser/RPCState.c

         ....

         case: rpcGetParameterValues:

                   doGetParameterValues(rpcAction);

                  breadk;

       ....

    4. doGetParameterValues 

       {

       ...

       const char *pp = pi ->name;

       n = findGWParameter(pp);      // *pp = Device.DeviceConfig.ConfigFIle

    }

    5. findGWParameter(const char * pstr)

       {

            nodeDepth = 0;

           instanceDepth = 0;

          return findParamter(rootDevice, pstr);

    6. 

    static findParameter(TRxObjNode *node, const char *pstr)

    {

        const char *e;

        int lth;

        TRxObjNode    *n = node;

        e = strchr(pstr, '.');

        if ( (n = searchNode(node, pstr, lth)))

        {

            if ( e && strlen(e) > 1)

            {

                 return findParameter(n->objDetail, e + 1);

            }

            else

           {

                return n;

           }

           return NULL;

        }  

    }

       

  • 相关阅读:
    很难理解的三个设计模式
    设计模式思考(转)
    AOP
    CAP理论(摘)
    DDBS
    NoSql
    Enterprise Library 企业库
    padright padleft
    Process ProcessThread Thread
    053374
  • 原文地址:https://www.cnblogs.com/gavinwu/p/3164797.html
Copyright © 2011-2022 走看看