Example #1
0
tr_bool
tr_sessionIsAddressBlocked( const tr_session * session,
                            const tr_address * addr )
{
    tr_list * l;

    assert( tr_isSession( session ) );

    for( l = session->blocklists; l; l = l->next )
        if( _tr_blocklistHasAddress( l->data, addr ) )
            return TRUE;
    return FALSE;
}
static int
testBlockList (void)
{
    const char * tmpfile_txt = TEMPFILE_TXT;
    const char * tmpfile_bin = TEMPFILE_BIN;
    struct tr_address addr;
    tr_blocklist * b;

    remove (tmpfile_txt);
    remove (tmpfile_bin);

    b = _tr_blocklistNew (tmpfile_bin, true);
    createTestBlocklist (tmpfile_txt);
    _tr_blocklistSetContent (b, tmpfile_txt);

    /* now run some tests */
    check (tr_address_from_string (&addr, "216.16.1.143"));
    check (!_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.144"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.145"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.146"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.147"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.148"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.149"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.150"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.151"));
    check (_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.152"));
    check (!_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "216.16.1.153"));
    check (!_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "217.0.0.1"));
    check (!_tr_blocklistHasAddress (b, &addr));
    check (tr_address_from_string (&addr, "255.0.0.1"));

    /* cleanup */
    _tr_blocklistFree (b);
    remove (tmpfile_txt);
    remove (tmpfile_bin);
    return 0;
}
Example #3
0
int
main( void )
{
#ifndef WIN32
    const char *   tmpfile_txt = "/tmp/transmission-blocklist-test.txt";
    const char *   tmpfile_bin = "/tmp/transmission-blocklist-test.bin";
#else
    const char *   tmpfile_txt = "transmission-blocklist-test.txt";
    const char *   tmpfile_bin = "transmission-blocklist-test.bin";
#endif
    struct tr_address addr;
    int            test = 0;
    tr_blocklist * b;

    remove( tmpfile_txt );
    remove( tmpfile_bin );

    b = _tr_blocklistNew( tmpfile_bin, true );
    createTestBlocklist( tmpfile_txt );
    _tr_blocklistSetContent( b, tmpfile_txt );

    /* now run some tests */
    check( tr_address_from_string( &addr, "216.16.1.143" ) );
    check( !_tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.144" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.145" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.146" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.147" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.148" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.149" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.150" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.151" ) );
    check( _tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.152" ) );
    check( !_tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "216.16.1.153" ) );
    check( !_tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "217.0.0.1" ) );
    check( !_tr_blocklistHasAddress( b, &addr ) );
    check( tr_address_from_string( &addr, "255.0.0.1" ) );

    /* cleanup */
    _tr_blocklistFree( b );
    remove( tmpfile_txt );
    remove( tmpfile_bin );
    return 0;
}