Ticket #7: Transmission-Mac-20090519.diff

File Transmission-Mac-20090519.diff, 13.8 KB (added by tiennou, 13 years ago)

DHT Mac OS X GUI modifications

  • Transmission.xcodeproj/project.pbxproj

    a b  
    3737                4D3EA0AA08AE13C600EA10C2 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D3EA0A908AE13C600EA10C2 /* IOKit.framework */; };
    3838                4D4ADFC70DA1631500A68297 /* blocklist.c in Sources */ = {isa = PBXBuildFile; fileRef = A2D3078E0D9EC45F0051FD27 /* blocklist.c */; };
    3939                4D4B7F6109E055660053C1EB /* libcrypto.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D2617F709DECE3D00D08EFA /* libcrypto.dylib */; };
     40                4D5CDCFF0FC2B42800AC3D6F /* dht.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D5CDCFD0FC2B42800AC3D6F /* dht.c */; };
     41                4D5CDD000FC2B42800AC3D6F /* dht.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D5CDCFE0FC2B42800AC3D6F /* dht.h */; };
     42                4D5CDD030FC2B43200AC3D6F /* libdht.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D5CDCF60FC2B40F00AC3D6F /* libdht.a */; };
     43                4D5CDD0A0FC2B69500AC3D6F /* tr-dht.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D5CDD080FC2B69500AC3D6F /* tr-dht.c */; };
     44                4D5CDD0B0FC2B69500AC3D6F /* tr-dht.h in Headers */ = {isa = PBXBuildFile; fileRef = 4D5CDD090FC2B69500AC3D6F /* tr-dht.h */; };
     45                4D5CDD2D0FC2B8A900AC3D6F /* memmem.c in Sources */ = {isa = PBXBuildFile; fileRef = 4D5CDD2C0FC2B8A900AC3D6F /* memmem.c */; };
    4046                4D6DAAC6090CE00500F43C22 /* RevealOff.png in Resources */ = {isa = PBXBuildFile; fileRef = 4D6DAAC4090CE00500F43C22 /* RevealOff.png */; };
    4147                4D6DAAC7090CE00500F43C22 /* RevealOn.png in Resources */ = {isa = PBXBuildFile; fileRef = 4D6DAAC5090CE00500F43C22 /* RevealOn.png */; };
    4248                4D9A2BF009E16D21002D0FF9 /* libtransmission.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 4D18389709DEC0030047D688 /* libtransmission.a */; };
     
    306312                        remoteGlobalIDString = 4D18389609DEC0030047D688;
    307313                        remoteInfo = libtransmission;
    308314                };
     315                4D5CDD010FC2B42E00AC3D6F /* PBXContainerItemProxy */ = {
     316                        isa = PBXContainerItemProxy;
     317                        containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */;
     318                        proxyType = 1;
     319                        remoteGlobalIDString = 4D5CDCF50FC2B40F00AC3D6F /* dht */;
     320                        remoteInfo = dht;
     321                };
    309322                4D9A2BF409E16D30002D0FF9 /* PBXContainerItemProxy */ = {
    310323                        isa = PBXContainerItemProxy;
    311324                        containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */;
     
    405418                4D36BA6D0CA2F00800A63CA5 /* publish.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = publish.h; path = libtransmission/publish.h; sourceTree = "<group>"; };
    406419                4D36BBC80CA309AA00A63CA5 /* evutil.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = evutil.c; path = "third-party/libevent/evutil.c"; sourceTree = "<group>"; };
    407420                4D3EA0A908AE13C600EA10C2 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = "<absolute>"; };
     421                4D5CDCF60FC2B40F00AC3D6F /* libdht.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libdht.a; sourceTree = BUILT_PRODUCTS_DIR; };
     422                4D5CDCFD0FC2B42800AC3D6F /* dht.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dht.c; path = "third-party/dht/dht.c"; sourceTree = "<group>"; };
     423                4D5CDCFE0FC2B42800AC3D6F /* dht.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = dht.h; path = "third-party/dht/dht.h"; sourceTree = "<group>"; };
     424                4D5CDD080FC2B69500AC3D6F /* tr-dht.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "tr-dht.c"; path = "libtransmission/tr-dht.c"; sourceTree = "<group>"; };
     425                4D5CDD090FC2B69500AC3D6F /* tr-dht.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "tr-dht.h"; path = "libtransmission/tr-dht.h"; sourceTree = "<group>"; };
     426                4D5CDD2C0FC2B8A900AC3D6F /* memmem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = memmem.c; path = "third-party/dht/memmem.c"; sourceTree = "<group>"; };
    408427                4D6DAAC4090CE00500F43C22 /* RevealOff.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = RevealOff.png; path = macosx/Images/RevealOff.png; sourceTree = "<group>"; };
    409428                4D6DAAC5090CE00500F43C22 /* RevealOn.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = RevealOn.png; path = macosx/Images/RevealOn.png; sourceTree = "<group>"; };
    410429                4DA6FDB80911233800450CB1 /* PauseOn.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = PauseOn.png; path = macosx/Images/PauseOn.png; sourceTree = "<group>"; };
     
    780799                        );
    781800                        runOnlyForDeploymentPostprocessing = 0;
    782801                };
     802                4D5CDCF40FC2B40F00AC3D6F /* Frameworks */ = {
     803                        isa = PBXFrameworksBuildPhase;
     804                        buildActionMask = 2147483647;
     805                        files = (
     806                        );
     807                        runOnlyForDeploymentPostprocessing = 0;
     808                };
    783809                4DDBB71709E16BAE00284745 /* Frameworks */ = {
    784810                        isa = PBXFrameworksBuildPhase;
    785811                        buildActionMask = 2147483647;
     
    828854                                BE75C38A0C72A1ED00DBEFE0 /* libevent.a in Frameworks */,
    829855                                BE1183780CE161390002D0F3 /* libminiupnp.a in Frameworks */,
    830856                                A226FDAC0D0CDF20005A7F71 /* libnatpmp.a in Frameworks */,
     857                                4D5CDD030FC2B43200AC3D6F /* libdht.a in Frameworks */,
    831858                        );
    832859                        runOnlyForDeploymentPostprocessing = 0;
    833860                };
     
    941968                                BE75C3490C729E9500DBEFE0 /* libevent.a */,
    942969                                BE1183480CE160960002D0F3 /* libminiupnp.a */,
    943970                                3C7A118D0D0B2EB800B5701F /* libnatpmp.a */,
     971                                4D5CDCF60FC2B40F00AC3D6F /* libdht.a */,
    944972                        );
    945973                        name = Products;
    946974                        sourceTree = "<group>";
     
    956984                                BE75C3570C72A0D600DBEFE0 /* libevent */,
    957985                                BE1183410CE15DF00002D0F3 /* libminiupnp */,
    958986                                3C7A11880D0B2E6700B5701F /* libnatpmp */,
     987                                4D5CDCFB0FC2B41500AC3D6F /* dht */,
    959988                                19C28FACFE9D520D11CA2CBB /* Products */,
    960989                        );
    961990                        name = Transmission;
     
    10861115                4D1838DC09DEC04A0047D688 /* libtransmission */ = {
    10871116                        isa = PBXGroup;
    10881117                        children = (
     1118                                4D5CDD080FC2B69500AC3D6F /* tr-dht.c */,
     1119                                4D5CDD090FC2B69500AC3D6F /* tr-dht.h */,
    10891120                                A2AAB65B0DE0CF6200E04DDA /* rpcimpl.c */,
    10901121                                A2AAB6590DE0CF6200E04DDA /* rpcimpl.h */,
    10911122                                A2AAB6580DE0CF6200E04DDA /* rpc-server.c */,
     
    11791210                        name = libtransmission;
    11801211                        sourceTree = "<group>";
    11811212                };
     1213                4D5CDCFB0FC2B41500AC3D6F /* dht */ = {
     1214                        isa = PBXGroup;
     1215                        children = (
     1216                                4D5CDD2C0FC2B8A900AC3D6F /* memmem.c */,
     1217                                4D5CDCFD0FC2B42800AC3D6F /* dht.c */,
     1218                                4D5CDCFE0FC2B42800AC3D6F /* dht.h */,
     1219                        );
     1220                        name = dht;
     1221                        sourceTree = "<group>";
     1222                };
    11821223                4DDBB70A09E16B3200284745 /* GUI */ = {
    11831224                        isa = PBXGroup;
    11841225                        children = (
     
    14071448                                A25E03E20E4015380086C225 /* tr-getopt.h in Headers */,
    14081449                                A21FBBAB0EDA78C300BC3C51 /* bandwidth.h in Headers */,
    14091450                                A263E0740F111B8A008D09D6 /* request-list.h in Headers */,
     1451                                4D5CDD0B0FC2B69500AC3D6F /* tr-dht.h in Headers */,
     1452                        );
     1453                        runOnlyForDeploymentPostprocessing = 0;
     1454                };
     1455                4D5CDCF20FC2B40F00AC3D6F /* Headers */ = {
     1456                        isa = PBXHeadersBuildPhase;
     1457                        buildActionMask = 2147483647;
     1458                        files = (
     1459                                4D5CDD000FC2B42800AC3D6F /* dht.h in Headers */,
    14101460                        );
    14111461                        runOnlyForDeploymentPostprocessing = 0;
    14121462                };
     
    14711521                                A226FDB10D0CDF6E005A7F71 /* PBXTargetDependency */,
    14721522                                BE1183760CE161040002D0F3 /* PBXTargetDependency */,
    14731523                                BE75C34F0C729ED300DBEFE0 /* PBXTargetDependency */,
     1524                                4D5CDD020FC2B42E00AC3D6F /* PBXTargetDependency */,
    14741525                        );
    14751526                        name = libtransmission;
    14761527                        productName = transmission;
    14771528                        productReference = 4D18389709DEC0030047D688 /* libtransmission.a */;
    14781529                        productType = "com.apple.product-type.library.static";
    14791530                };
     1531                4D5CDCF50FC2B40F00AC3D6F /* dht */ = {
     1532                        isa = PBXNativeTarget;
     1533                        buildConfigurationList = 4D5CDCFC0FC2B41500AC3D6F /* Build configuration list for PBXNativeTarget "dht" */;
     1534                        buildPhases = (
     1535                                4D5CDCF20FC2B40F00AC3D6F /* Headers */,
     1536                                4D5CDCF30FC2B40F00AC3D6F /* Sources */,
     1537                                4D5CDCF40FC2B40F00AC3D6F /* Frameworks */,
     1538                        );
     1539                        buildRules = (
     1540                        );
     1541                        dependencies = (
     1542                        );
     1543                        name = dht;
     1544                        productName = dht;
     1545                        productReference = 4D5CDCF60FC2B40F00AC3D6F /* libdht.a */;
     1546                        productType = "com.apple.product-type.library.static";
     1547                };
    14801548                4DDBB71809E16BAE00284745 /* transmissioncli */ = {
    14811549                        isa = PBXNativeTarget;
    14821550                        buildConfigurationList = 4DDBB71D09E16BF100284745 /* Build configuration list for PBXNativeTarget "transmissioncli" */;
     
    16281696                                BE75C3480C729E9500DBEFE0 /* event */,
    16291697                                BE1183470CE160960002D0F3 /* miniupnp */,
    16301698                                3C7A118C0D0B2EB800B5701F /* natpmp */,
     1699                                4D5CDCF50FC2B40F00AC3D6F /* dht */,
    16311700                        );
    16321701                };
    16331702/* End PBXProject section */
     
    18161885                                4DB74F080E8CD75100AEB1A8 /* wildmat.c in Sources */,
    18171886                                A21FBBAC0EDA78C300BC3C51 /* bandwidth.c in Sources */,
    18181887                                A263E0730F111B89008D09D6 /* request-list.c in Sources */,
     1888                                4D5CDD0A0FC2B69500AC3D6F /* tr-dht.c in Sources */,
     1889                        );
     1890                        runOnlyForDeploymentPostprocessing = 0;
     1891                };
     1892                4D5CDCF30FC2B40F00AC3D6F /* Sources */ = {
     1893                        isa = PBXSourcesBuildPhase;
     1894                        buildActionMask = 2147483647;
     1895                        files = (
     1896                                4D5CDCFF0FC2B42800AC3D6F /* dht.c in Sources */,
     1897                                4D5CDD2D0FC2B8A900AC3D6F /* memmem.c in Sources */,
    18191898                        );
    18201899                        runOnlyForDeploymentPostprocessing = 0;
    18211900                };
     
    19422021                        target = 4D18389609DEC0030047D688 /* libtransmission */;
    19432022                        targetProxy = 4D1838E509DEC1170047D688 /* PBXContainerItemProxy */;
    19442023                };
     2024                4D5CDD020FC2B42E00AC3D6F /* PBXTargetDependency */ = {
     2025                        isa = PBXTargetDependency;
     2026                        target = 4D5CDCF50FC2B40F00AC3D6F /* dht */;
     2027                        targetProxy = 4D5CDD010FC2B42E00AC3D6F /* PBXContainerItemProxy */;
     2028                };
    19452029                4D9A2BF509E16D30002D0FF9 /* PBXTargetDependency */ = {
    19462030                        isa = PBXTargetDependency;
    19472031                        target = 4D18389609DEC0030047D688 /* libtransmission */;
     
    21302214                                LIBRARY_SEARCH_PATHS = (
    21312215                                        "$(inherited)",
    21322216                                        "\"$(SRCROOT)/build/Development\"",
     2217                                        "\"$(SRCROOT)/build/Debug\"",
    21332218                                );
    21342219                                OTHER_CFLAGS = (
    21352220                                        "-DSYS_DARWIN",
     
    23092394                                LIBRARY_SEARCH_PATHS = (
    23102395                                        "$(inherited)",
    23112396                                        "\"$(SRCROOT)/build/Development\"",
     2397                                        "\"$(SRCROOT)/build/Debug\"",
    23122398                                );
    23132399                                OTHER_CFLAGS = (
    23142400                                        "-DSYS_DARWIN",
    (this hunk was shorter than expected) 
    23252411                        };
    23262412                        name = Release;
    23272413                };
     2414                4D5CDCF70FC2B41000AC3D6F /* Debug */ = {
     2415                        isa = XCBuildConfiguration;
     2416                        buildSettings = {
     2417                                ALWAYS_SEARCH_USER_PATHS = NO;
     2418                                COPY_PHASE_STRIP = NO;
     2419                                GCC_DYNAMIC_NO_PIC = NO;
     2420                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
     2421                                GCC_MODEL_TUNING = G5;
     2422                                GCC_OPTIMIZATION_LEVEL = 0;
     2423                                INSTALL_PATH = /usr/local/lib;
     2424                                PREBINDING = NO;
     2425                                PRODUCT_NAME = dht;
     2426                        };
     2427                        name = Debug;
     2428                };
     2429                4D5CDCF80FC2B41000AC3D6F /* Release - Debug */ = {
     2430                        isa = XCBuildConfiguration;
     2431                        buildSettings = {
     2432                                ALWAYS_SEARCH_USER_PATHS = NO;
     2433                                GCC_ENABLE_FIX_AND_CONTINUE = YES;
     2434                                GCC_MODEL_TUNING = G5;
     2435                                INSTALL_PATH = /usr/local/lib;
     2436                                PREBINDING = NO;
     2437                                PRODUCT_NAME = dht;
     2438                        };
     2439                        name = "Release - Debug";
     2440                };
     2441                4D5CDCF90FC2B41000AC3D6F /* Release */ = {
     2442                        isa = XCBuildConfiguration;
     2443                        buildSettings = {
     2444                                ALWAYS_SEARCH_USER_PATHS = NO;
     2445                                COPY_PHASE_STRIP = YES;
     2446                                DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
     2447                                GCC_ENABLE_FIX_AND_CONTINUE = NO;
     2448                                GCC_MODEL_TUNING = G5;
     2449                                INSTALL_PATH = /usr/local/lib;
     2450                                PREBINDING = NO;
     2451                                PRODUCT_NAME = dht;
     2452                                ZERO_LINK = NO;
     2453                        };
     2454                        name = Release;
     2455                };
    23282456                4DDBB71E09E16BF100284745 /* Release */ = {
    23292457                        isa = XCBuildConfiguration;
    23302458                        buildSettings = {
     
    24642595                                LIBRARY_SEARCH_PATHS = (
    24652596                                        "$(inherited)",
    24662597                                        "\"$(SRCROOT)/build/Development\"",
     2598                                        "\"$(SRCROOT)/build/Debug\"",
    24672599                                );
    24682600                                OTHER_CFLAGS = (
    24692601                                        "-DSYS_DARWIN",
     
    26402772                        defaultConfigurationIsVisible = 0;
    26412773                        defaultConfigurationName = Debug;
    26422774                };
     2775                4D5CDCFC0FC2B41500AC3D6F /* Build configuration list for PBXNativeTarget "dht" */ = {
     2776                        isa = XCConfigurationList;
     2777                        buildConfigurations = (
     2778                                4D5CDCF70FC2B41000AC3D6F /* Debug */,
     2779                                4D5CDCF80FC2B41000AC3D6F /* Release - Debug */,
     2780                                4D5CDCF90FC2B41000AC3D6F /* Release */,
     2781                        );
     2782                        defaultConfigurationIsVisible = 0;
     2783                        defaultConfigurationName = Debug;
     2784                };
    26432785                4DDBB71D09E16BF100284745 /* Build configuration list for PBXNativeTarget "transmissioncli" */ = {
    26442786                        isa = XCConfigurationList;
    26452787                        buildConfigurations = (
  • macosx/InfoWindowController.m

    a b typedef enum 
    10341034            case TR_PEER_FROM_PEX:
    10351035                [components addObject: NSLocalizedString(@"From: peer exchange", "Inspector -> Peers tab -> table row tooltip")];
    10361036                break;
     1037            case TR_PEER_FROM_DHT:
     1038                [components addObject: NSLocalizedString(@"From: DHT", "Inspector -> Peers tab -> table row tooltip")];
     1039                break;
    10371040        }
    10381041       
    10391042        //determing status strings from flags
    typedef enum 
    15331536            if ((count = [torrent totalPeersPex]) > 0)
    15341537                [components addObject: [NSString stringWithFormat:
    15351538                                        NSLocalizedString(@"%d PEX", "Inspector -> Peers tab -> peers"), count]];
     1539            if ((count = [torrent totalPeersDHT]) > 0)
     1540                [components addObject: [NSString stringWithFormat:
     1541                                        NSLocalizedString(@"%d DHT", "Inspector -> Peers tab -> peers"), count]];
    15361542            if ((count = [torrent totalPeersCache]) > 0)
    15371543                [components addObject: [NSString stringWithFormat:
    15381544                                        NSLocalizedString(@"%d cache", "Inspector -> Peers tab -> peers"), count]];
  • macosx/Torrent.m

    diff --git a/macosx/Torrent.m b/macosx/Torrent.m
    index 417203b..94eb836 100644
    a b int trashDataFile(const char * filename) 
    12861286    return fStat->peersFrom[TR_PEER_FROM_PEX];
    12871287}
    12881288
     1289- (NSInteger) totalPeersDHT
     1290{
     1291    return fStat->peersFrom[TR_PEER_FROM_DHT];
     1292}
     1293
    12891294- (NSInteger) totalPeersKnown
    12901295{
    12911296    return fStat->peersKnown;