Ignore:
Timestamp:
Dec 23, 2010, 7:40:54 PM (11 years ago)
Author:
Sven Rech
Message:

keysearcher external client should work with p2p now

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/CrypPlugins/KeySearcher/KeySearcher.cs

    r2246 r2257  
    249249        private KeySearcherOpenCLCode externalKeySearcherOpenCLCode;
    250250        private IKeyTranslator externalKeyTranslator;
    251         private int externalKeysProcessed;
     251        private BigInteger externalKeysProcessed;
    252252        private EndPoint externalClientConnected;
    253253        private AutoResetEvent waitForExternalClientToFinish = new AutoResetEvent(false);
     
    726726        private DateTime beginBruteforcing;
    727727        private DistributedBruteForceManager distributedBruteForceManager;
     728        private BigInteger keysInThisChunk;
    728729
    729730        // main entry point to the KeySearcher
     
    845846            }
    846847
     848            keysInThisChunk = pattern.size();
     849
    847850            if (settings.UseExternalClient)
    848851            {
     
    863866            else
    864867            {
    865                 BigInteger size = pattern.size();
    866868                KeyPattern.KeyPattern[] patterns = splitPatternForThreads(pattern);
    867869                if (patterns == null || patterns.Length == 0)
     
    900902                    #endregion
    901903
    902                     if (keycounter > size)
     904                    if (keycounter > keysInThisChunk)
    903905                        GuiLogMessage("There must be an error, because we bruteforced too much keys...", NotificationLevel.Error);
    904906
    905907                    #region determination of the thread with most keys
    906                     if (size - keycounter > 1000)
     908                    if (keysInThisChunk - keycounter > 1000)
    907909                    {
    908910                        try
     
    931933                    if (redirectResultsToStatisticsGenerator)
    932934                    {
    933                         distributedBruteForceManager.StatisticsGenerator.ShowProgress(costList, size, keycounter, keysPerSecond);
     935                        distributedBruteForceManager.StatisticsGenerator.ShowProgress(costList, keysInThisChunk, keycounter, keysPerSecond);
    934936                    }
    935937                    else
    936938                    {
    937                         showProgress(costList, size, keycounter, keysPerSecond);
     939                        showProgress(costList, keysInThisChunk, keycounter, keysPerSecond);
    938940                    }
    939941
     
    957959                    #endregion
    958960
    959                     if (keycounter >= size)
     961                    if (keycounter >= keysInThisChunk)
    960962                        break;
    961963                }//end while
     
    10711073            externalKeysProcessed += progress;
    10721074            int keysPerSec = (int)(progress / (DateTime.Now - assignTime).TotalSeconds);
    1073             showProgress(costList, pattern.size(), externalKeysProcessed, keysPerSec);
    1074 
    1075             if (externalKeysProcessed != pattern.size())
     1075
     1076            QuickWatchPresentation.Dispatcher.Invoke(DispatcherPriority.Normal, (SendOrPostCallback)delegate
     1077                                                                                    {
     1078                                                                                        if (!((QuickWatch)QuickWatchPresentation).IsP2PEnabled)
     1079                                                                                            showProgress(costList, keysInThisChunk, externalKeysProcessed, keysPerSec);
     1080                                                                                        else
     1081                                                                                            distributedBruteForceManager.StatisticsGenerator.ShowProgress(costList,
     1082                                                                                                             keysInThisChunk, externalKeysProcessed, keysPerSec);
     1083                                                                                    }, null);
     1084
     1085
     1086            if (externalKeysProcessed != keysInThisChunk)
    10761087            {
    10771088                AssignJobToClient(client, null);
Note: See TracChangeset for help on using the changeset viewer.