2010-10-16 13 views
0

Je travaille actuellement sur un outil qui vérifie si vos applications sont vulnérables à dllhijacking. Quoi qu'il en soit, il y a une section dans mon code qui n'a pas l'air très élégante. Maintenant, il n'y a que deux ensembles, mais je veux en ajouter d'autres. Y a-t-il une autre façon d'ajouter des boucles pour chaque ensemble?Tableau multidimensionnel et dllhijacking

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]); 
    } 
} 

Répondre

1

en utilisant une seule boucle

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]); 
     } 
    } 
+0

grande réponse. comment voulez-vous garder les ensembles organisés ?? – Bubblegun