int main(void) { test_mask(16); test_mask(32); test_mask(64); test_mask(128); return(0); }
virtual void onDraw(SkCanvas* canvas) { if (false) { test_grad(canvas); return; } if (false) { // avoid bit rot, suppress warning test_mask(); } // Initial pixel-boundary-aligned draw draw_rect_tests(canvas); // Repeat 4x with .2, .4, .6, .8 px offsets canvas->translate(SK_Scalar1 / 5, SK_Scalar1 / 5); canvas->translate(SkIntToScalar(50), 0); draw_rect_tests(canvas); canvas->translate(SK_Scalar1 / 5, SK_Scalar1 / 5); canvas->translate(SkIntToScalar(50), 0); draw_rect_tests(canvas); canvas->translate(SK_Scalar1 / 5, SK_Scalar1 / 5); canvas->translate(SkIntToScalar(50), 0); draw_rect_tests(canvas); canvas->translate(SK_Scalar1 / 5, SK_Scalar1 / 5); canvas->translate(SkIntToScalar(50), 0); draw_rect_tests(canvas); }
int main( int argc , char ** argv) { test_index_list(); test_mask(); test_active_index_list(); test_approx_equal(); exit(0); }
int main(int argc, char** argv) { test_host_bits(); test_class(); test_mask(); test_broadcast(); test_is_valid_id(); return 0; }
void test_masks(void) { int i; testStart("Mask pattern checks"); for(i=0; i<4; i++) { assert_zero(test_mask(i), "Mask pattern %d incorrect.\n", i); } testFinish(); }
int aim_main(int argc, char* argv[]) { (void) argc; (void) argv; test_basic(); test_collisions(); test_random(); test_mask(); return 0; }
int test_functions(void) { int retval = 0; retval |= test_settings(); retval |= test_rounding(); retval |= test_sticky(); retval |= test_precision(); retval |= test_class(); retval |= test_mask(); return retval; }
/* * Internal function; called by lpm_lookup() */ void lookup(struct sockaddr_storage *addr, char* output, struct internal_node* n) { uint32_t b = 0; struct internal_node* next = n; struct sockaddr_storage *best_prefix = NULL; uint8_t best_netmask = 0; if (addr->ss_family == AF_INET6) { b = MAX_BITS6; } else if (addr->ss_family == AF_INET) { b = MAX_BITS4; } do { n = next; b--; bool v_bit = test_v_bit(addr, b); /* If we've found an internal node, determine which direction to descend. */ if (v_bit) { next = n->r; } else { next = n->l; } if (n->type == DAT_NODE) { struct data_node* node = (struct data_node*)n; char prefix[INET6_ADDRSTRLEN]; switch (node->prefix->ss_family) { case AF_INET6: { struct sockaddr_in6 *match_addr = (struct sockaddr_in6 *)addr; inet_ntop(AF_INET6, &match_addr->sin6_addr, prefix, INET6_ADDRSTRLEN); if (test_mask((struct sockaddr_in6 *)node->prefix, node->netmask, match_addr)) { best_prefix = node->prefix; best_netmask = node->netmask; } else { break; } break; } case AF_INET: { struct sockaddr_in *match_addr = (struct sockaddr_in *)addr; struct sockaddr_in *node_addr = (struct sockaddr_in *)node->prefix; inet_ntop(AF_INET, &match_addr->sin_addr, prefix, INET6_ADDRSTRLEN); uint32_t mask = 0xFFFFFFFF; mask = mask - ((uint32_t)pow(2, 32 - node->netmask) - 1); if ((match_addr->sin_addr.s_addr & mask) == node_addr->sin_addr.s_addr) { best_prefix = node->prefix; best_netmask = node->netmask; } else { break; } break; } } } } while (next != NULL); if (best_prefix == NULL) { sprintf(output, "NF"); } else { char prefix[INET6_ADDRSTRLEN]; switch (best_prefix->ss_family) { case AF_INET6: { struct sockaddr_in6 *addr6 = (struct sockaddr_in6 *)best_prefix; inet_ntop(AF_INET6, &addr6->sin6_addr, prefix, INET6_ADDRSTRLEN); break; } case AF_INET: { struct sockaddr_in *addr4 = (struct sockaddr_in *)best_prefix; struct in_addr addr_bytes; addr_bytes.s_addr = htonl(addr4->sin_addr.s_addr); inet_ntop(AF_INET, &addr_bytes, prefix, INET_ADDRSTRLEN); break; } } sprintf(output, "%s/%d", prefix, best_netmask); } }
/**************************************************************************** main program ****************************************************************************/ int main(int argc,char *argv[]) { char *share1, *share2; struct cli_state *cli1, *cli2; extern char *optarg; extern int optind; extern FILE *dbf; int opt; char *p; int seed; setlinebuf(stdout); dbf = stderr; if (argv[1][0] == '-' || argc < 3) { usage(); exit(1); } share1 = argv[1]; share2 = argv[2]; all_string_sub(share1,"/","\\",0); all_string_sub(share2,"/","\\",0); setup_logging(argv[0],True); argc -= 2; argv += 2; TimeInit(); charset_initialise(); if (getenv("USER")) { pstrcpy(username,getenv("USER")); } seed = time(NULL); while ((opt = getopt(argc, argv, "U:s:hm:f:a")) != EOF) { switch (opt) { case 'U': pstrcpy(username,optarg); p = strchr(username,'%'); if (p) { *p = 0; pstrcpy(password, p+1); got_pass = 1; } break; case 's': seed = atoi(optarg); break; case 'h': usage(); exit(1); case 'm': maskchars = optarg; break; case 'f': filechars = optarg; break; case 'a': showall = 1; break; default: printf("Unknown option %c (%d)\n", (char)opt, opt); exit(1); } } argc -= optind; argv += optind; DEBUG(0,("seed=%d\n", seed)); srandom(seed); cli1 = connect_one(share1); if (!cli1) { DEBUG(0,("Failed to connect to %s\n", share1)); exit(1); } cli2 = connect_one(share2); if (!cli2) { DEBUG(0,("Failed to connect to %s\n", share2)); exit(1); } test_mask(argc, argv, cli1, cli2); return(0); }