//rewrite add_port_info to set customer-facing port informations int set_customer_facig_port(int vpn_id, const char *ifname){ char br_name[10]={0}; port_id_entry *new_node; vpn_entry *vpn = vpn_get(); if (!vpn) return -1; vpn=search_vpn_node(vpn,vpn_id); if(!vpn) return -1; new_node = (port_id_entry *) malloc(sizeof(port_id_entry)); if (!new_node) return -1; //initial new_node memset(new_node,0,sizeof(struct port_id_entry)); strcpy(new_node->iface,ifname); sprintf(br_name,"br%d",vpn_id); if(add_if(br_name,ifname)!=0) return -1; if (vpn->in_use==USED){ if(vpn->port_id_ptr == NULL){ vpn->port_id_ptr=new_node; }else{ new_node->next=vpn->port_id_ptr; vpn->port_id_ptr=new_node; } show_port_info(vpn->port_id_ptr);//testing ; return 0; //set port id info ok; }else return -1; }
void visit_form(Process *process, Obj *env, Obj *bytecodeObj, int *position, Obj *form) { if(eval_error) { return; } else if(form->tag == 'C') { if(form->car->car == NULL) { add_literal(bytecodeObj, position, nil); } else if(HEAD_EQ("quote")) { add_literal(bytecodeObj, position, form->car); } else if(HEAD_EQ("if")) { add_if(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("while")) { add_while(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("do")) { add_do(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("let")) { add_let(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("def")) { add_def(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("reset!")) { add_reset(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("ref")) { add_ref(process, env, bytecodeObj, position, form); } /* else if(HEAD_EQ("or")) { */ /* add_or(process, env, bytecodeObj, position, form); */ /* } */ else if(HEAD_EQ("not")) { add_not(process, env, bytecodeObj, position, form); } else if(HEAD_EQ("fn")) { Obj *lambda = obj_new_lambda(form->cdr->car, form_to_bytecode(process, env, form->cdr->cdr->car), env, form); add_literal(bytecodeObj, position, lambda); } else { add_call(process, env, bytecodeObj, position, form); } } else if(form->tag == 'Y') { add_lookup(bytecodeObj, position, form); } else { add_literal(bytecodeObj, position, form); } /* else { */ /* printf("Bytecode can't handle form: "); */ /* obj_print_cout(form); */ /* exit(1); */ /* } */ }
/* * Figure out what devices are available. */ int probe_ethernet() { struct mvmeprom_brdid *brdid; uint n; brdid = mvmeprom_brdid(); /* On-board Ethernet */ switch (brdid->model) { case BRD_187: case BRD_197: case BRD_8120: ie_config[nie_config].clun = 0; ie_config[nie_config].phys_addr = INTEL_REG_ADDR; bcopy(brdid->etheraddr, ie_config[nie_config].eaddr, 6); add_if(&ie_driver); nie_config++; break; } /* MVME376 */ for (n = 0; n < sizeof(vle_addr) / sizeof(vle_addr[0]); n++) { if (badaddr((void *)vle_addr[n], 2) == 0) { le_config[nle_config].clun = 2 + n; le_config[nle_config].phys_addr = vle_addr[n]; le_config[nle_config].buf_addr = VLEMEMBASE - n * VLEMEMSIZE; le_config[nle_config].buf_size = VLEMEMSIZE; le_read_etheraddr(vle_addr[n], le_config[nle_config].eaddr); add_if(&le_driver); nle_config++; } } return nie_config + nle_config; }
int main(int argc, char **argv) { char *tun = NULL; char *dev_node = NULL; char *name = argv[0]; int opt, brief = 0, if_fd, ip_fd; operation_t op = NOP; while((opt = getopt(argc, argv, "bd:f:t:u:")) > 0){ switch(opt) { case 'b': brief = 1; break; case 'd': op = DELETE; tun = optarg; break; case 'f': dev_node = optarg; break; case 't': op = ADD; tun = optarg; break; case 'h': default: Usage(name); } } argv += optind; argc -= optind; if(argc > 0) Usage(name); if(tun == NULL) Usage(name); if(dev_node == NULL) dev_node = get_dev_node(tun); if ((ip_fd = open(IP_NODE, O_RDWR)) < 0){ perror("open"); fprintf(stderr,"Can't open %s\n", IP_NODE); exit(1); } if((if_fd = open(dev_node, O_RDWR)) < 0){ perror("open"); fprintf(stderr, "Can't open '%s'\n", dev_node); exit(1); } switch(op){ case(DELETE): delete_if(ip_fd, if_fd, tun); break; case(ADD): add_if(ip_fd, if_fd, tun, brief, dev_node); break; default: break; } close(ip_fd); close(if_fd); exit(0); }
inline typename enable_if<is_interval_map<MapT>, MapT>::type& assign_if(const Predicate& pred, MapT& object, const MapT& src) { icl::clear(object); return add_if(object, src, pred); }
void *op_brick_add(t_brick *brick) { t_context *C = ctx_get(); t_node *node = NULL; t_block *block; t_set *set; // store scene_store(C->scene,1); char *name=brick->id.name; if(is(name,"frame")) node = add_slider_int(C,"frame",&C->app->frame); else if(is(name,"timer")) node = add_slider_float(C,"timer",&C->app->timer); else if(is(name,"timer low")) node = add_slider_float(C,"timer low",&C->app->timer_add_low); else if(is(name,"=")) node = add_operator_double(C,"="); else if(is(name,">")) node = add_operator_double(C,">"); else if(is(name,"<")) node = add_operator_double(C,"<"); else if(is(name,"if")) node = add_if(C); else if(is(name,"mod")) node = add_operator_double(C,"mod"); else if(is(name,"x")) node = add_maths(C,"x"); else if(is(name,"+")) node = add_maths(C,"+"); else if(is(name,"++")) node = add_plusplus(C); else if(is(name,"switch")) node = add_switch(C,"switch",NULL,NULL); else if(is(name,"clone")) node = add_clone(C); else if(is(name,"pipe")) node = add_pipe(C); else if(is(name,"sec")) node = add_slider_int(C,"sec",&C->app->clock->sec); else if(is(name,"min")) node = add_slider_int(C,"min",&C->app->clock->min); else if(is(name,"int")) node = add_slider_int(C,"int",NULL); else if(is(name,"float")) node = add_slider_float(C,"float",NULL); else if(is(name,"10")) node = add_multiplier(C,"10"); else if(is(name,"100")) node = add_multiplier(C,"100"); else if(is(name,".1")) node = add_multiplier(C,".1"); else if(is(name,".01")) node = add_multiplier(C,".01"); else if(is(name,".001")) node = add_multiplier(C,".001"); else if(is(name,"msec")) node = add_slider_int(C,"msec",&C->app->clock->msec); else if(is(name,"cos")) node = add_operator_single(C,"cos",op_cos); else if(is(name,"sin")) node = add_operator_single(C,"sin",op_sin); else if(is(name,"cam_eye_x")) node = add_slider_camera(C,"eye x"); else if(is(name,"cam_eye_y")) node = add_slider_camera(C,"eye y"); else if(is(name,"cam_eye_z")) node = add_slider_camera(C,"eye z"); else if(is(name,"cam_pos_x")) node = add_slider_camera(C,"pos x"); else if(is(name,"cam_pos_y")) node = add_slider_camera(C,"pos y"); else if(is(name,"cam_pos_z")) node = add_slider_camera(C,"pos z"); else if(is(name,"cam_rot_xy")) node = add_slider_float_custom(C,"cam rot xy",op_camera_rotate_xy); else if(is(name,"cam_rot_z")) node = add_slider_float_custom(C,"cam rot z",op_camera_rotate_z); else if(is(name,"pos x")) node = add_slider_object(C,"pos x"); else if(is(name,"pos y")) node = add_slider_object(C,"pos y"); else if(is(name,"pos z")) node = add_slider_object(C,"pos z"); else if(is(name,"rot x")) node = add_slider_object(C,"rot x"); else if(is(name,"rot y")) node = add_slider_object(C,"rot y"); else if(is(name,"rot z")) node = add_slider_object(C,"rot z"); else if(is(name,"scl x")) node = add_slider_object(C,"scl x"); else if(is(name,"scl y")) node = add_slider_object(C,"scl y"); else if(is(name,"scl z")) node = add_slider_object(C,"scl z"); else if(is(name,"red")) node = add_slider_object(C,"red"); else if(is(name,"green")) node = add_slider_object(C,"green"); else if(is(name,"blue")) node = add_slider_object(C,"blue"); else if(is(name,"color")) node = add_slider_object(C,"color"); else if(is(name,"faces")) node = add_slider_object(C,"faces"); else if(is(name,"alpha")) node = add_slider_object(C,"alpha"); else if(is(name,"label")) node = add_label(C,"label"); else if(is(name,"get")) node = add_get(C); else if(is(name,"rewind")) node = add_trigger_always(C,"rewind",op_rewind); else if(is(name,"not")) node = add_slider_int_custom(C,"not",NULL,op_not); else if(is(name,"mouse_x")) node = add_slider_int(C,"mouse x",&C->app->mouse->x); else if(is(name,"mouse_y")) node = add_slider_int(C,"mouse y",&C->app->mouse->y); else if(is(name,"keyboard")) node = add_slider_char(C,"keyboard",&C->app->keyboard->key_pressed); else if(is(name,"rnd")) node = add_slider_int_custom(C,"rnd",NULL,op_rnd); else if(is(name,"neg")) node = add_slider_int_custom(C,"neg",NULL,op_neg); else if(is(name,"abs")) node = add_slider_int_custom( C, "abs", NULL, op_abs); else if(is(name,"last?")) node = add_switch(C,"last?",NULL,op_is_last); else if(is(name,"for")) node = add_for(C); else if(is(name,"vector 3d")) node = add_vector_3d(C); else if(is(name,"vector 2d")) node = add_vector_2d(C); else if(is(name,"bang")) node = add_slider_int_custom(C,"bang",NULL,op_bang); else if(is(name,"quit")) node = add_trigger_always(C,"quit",op_do_quit); else if(is(name,"const")) node = add_const(C); else if(is(name,"and")) node = add_maths(C,"and"); else if(is(name,"stack")) node = add_stack(C); else if(is(name,"mesh")) node = add_slider_object(C,"mesh"); else if(is(name,"vertex")) node = add_brick_mesh(C,"vertex"); else if(is(name,"edges")) node = add_brick_mesh(C,"edges"); else if(is(name,"case")) node = add_case(C,"switch"); // Store scene_store(C->scene,0); term_log("+ brick"); // Switch Desk if(!C->ui->show_sets) show_sets(C); if( node) { block = node->data; set = block->set; set_setup( set); } return NULL; }