【问题标题】:Multidimensional array and dllhijacking多维数组和 dllhijacking
【发布时间】:2010-10-16 11:02:10
【问题描述】:

我目前正在开发一种工具,用于检查您的应用是否容易受到 dllhijacking 的攻击。 无论如何,我的代码中有一段看起来不太优雅。 现在只有两套,但我想添加更多。有没有别的办法 而不是只为每个集合添加 for 循环?

LPSTR szFileExtWireShark[] = {"airpcap.dll", ".bfr", ".enc", ".fdc", ".pcap", ".pcapng", ".syc", NULL};
LPSTR szFileExtWin7[] = {"wab32res.dll", ".contact", ".group", ".p7c", ".vcf", NULL};

int loadSets(LPSTR szFileName, LPSTR szPath) {
  int counter;
  for(counter=1; szFileExtWireShark[counter] != NULL; counter++) {
 checkExt(szFileName, szPath, szFileExtWireShark[counter], szFileExtWireShark[0]);
  }
  for(counter=1; szFileExtWin7[counter] != NULL; counter++) {
 checkExt(szFileName, szPath, szFileExtWin7[counter], szFileExtWin7[0]);
  }
}

【问题讨论】:

    标签: c windows dll multidimensional-array


    【解决方案1】:

    使用单循环

     LPSTR szFileExtWireShark[] = {"airpcap.dll", ".bfr", ".enc", ".fdc", ".pcap", ".pcapng", ".syc", NULL};
        LPSTR szFileExtWin7[] = {"wab32res.dll", ".contact", ".group", ".p7c", ".vcf", NULL};
    
        int loadSets(LPSTR szFileName, LPSTR szPath) {
          int counter;
          for(counter=1; (szFileExtWireShark[counter] != NULL && szFileExtWin7[counter] != NULL); counter++) {
        if(szFileExtWireShark[counter] != NULL)
         checkExt(szFileName, szPath, szFileExtWireShark[counter], szFileExtWireShark[0]);
        if(szFileExtWin7[counter] != NULL)
         checkExt(szFileName, szPath, szFileExtWin7[counter], szFileExtWin7[0]);
          }
        }
    

    【讨论】:

    • 很好的答案。你想如何保持套装井井有条??
    猜你喜欢
    • 2015-07-27
    • 2012-03-07
    • 2011-05-06
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多