Changeset 3578 for trunk/daemon/remote.c


Ignore:
Timestamp:
Oct 26, 2007, 3:43:27 AM (15 years ago)
Author:
joshe
Message:

Add IPC messages to set and retrieve the encryption mode.
Implement encryption mode messages in -daemon and -remote.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/daemon/remote.c

    r3401 r3578  
    7373    char              dir[MAXPATHLEN];
    7474    int               pex;
     75    const char *      crypto;
    7576};
    7677
     
    175176        ( '\0' != o.dir[0]          &&   0 > client_dir      ( o.dir     ) ) ||
    176177        ( !SLIST_EMPTY( &o.files )  &&   0 > client_addfiles ( &o.files  ) ) ||
     178        ( o.crypto                  &&   0 > client_crypto   ( o.crypto  ) ) ||
    177179        ( o.startall                &&   0 > client_start    ( 0, NULL   ) ) ||
    178180        ( o.stopall                 &&   0 > client_stop     ( 0, NULL   ) ) ||
     
    230232  "\n"
    231233  "  -a --add <torrent>        Add a torrent\n"
     234  "  -c --encryption preferred Prefer peers to use encryption\n"
     235  "  -c --encryption required  Require encryption for all peers\n"
    232236  "  -d --download-limit <int> Max download rate in KiB/s\n"
    233237  "  -D --download-unlimited   No download rate limit\n"
     
    261265readargs( int argc, char ** argv, struct opts * opts )
    262266{
    263     char optstr[] = "a:d:DeEf:hilmMp:qr:s:S:t:u:Ux";
     267    char optstr[] = "a:c:d:DeEf:hilmMp:qr:s:S:t:u:Ux";
    264268    struct option longopts[] =
    265269    {
    266270        { "add",                required_argument, NULL, 'a' },
     271        { "encryption",         required_argument, NULL, 'c' },
    267272        { "download-limit",     required_argument, NULL, 'd' },
    268273        { "download-unlimited", no_argument,       NULL, 'D' },
     
    307312                    return -1;
    308313                }
     314                break;
     315            case 'c':
     316                if(!strcasecmp(optarg, "preferred"))
     317                    opts->crypto = "preferred";
     318                else if(!strcasecmp(optarg, "required"))
     319                    opts->crypto = "required";
     320                else
     321                    usage("invalid encryption mode: %s", optarg);
    309322                break;
    310323            case 'd':
Note: See TracChangeset for help on using the changeset viewer.