Lines Matching defs:xconf
661 ldp_af_conf_get(struct ldpd_conf *xconf, int af)
665 return (&xconf->ipv4);
667 return (&xconf->ipv6);
687 ldp_is_dual_stack(struct ldpd_conf *xconf)
689 return ((xconf->ipv4.flags & F_LDPD_AF_ENABLED) &&
690 (xconf->ipv6.flags & F_LDPD_AF_ENABLED));
694 main_imsg_send_config(struct ldpd_conf *xconf)
704 if (main_imsg_compose_both(IMSG_RECONF_CONF, xconf,
705 sizeof(*xconf)) == -1)
708 LIST_FOREACH(auth, &xconf->auth_list, entry) {
714 LIST_FOREACH(iface, &xconf->iface_list, entry) {
720 LIST_FOREACH(tnbr, &xconf->tnbr_list, entry) {
726 LIST_FOREACH(nbrp, &xconf->nbrp_list, entry) {
732 LIST_FOREACH(l2vpn, &xconf->l2vpn_list, entry) {
758 struct ldpd_conf *xconf;
760 if ((xconf = parse_config(conffile)) == NULL)
763 if (main_imsg_send_config(xconf) == -1)
766 merge_config(ldpd_conf, xconf);
772 merge_config(struct ldpd_conf *conf, struct ldpd_conf *xconf)
774 merge_global(conf, xconf);
775 merge_auths(conf, xconf);
776 merge_af(AF_INET, &conf->ipv4, &xconf->ipv4);
777 merge_af(AF_INET6, &conf->ipv6, &xconf->ipv6);
778 merge_ifaces(conf, xconf);
779 merge_tnbrs(conf, xconf);
780 merge_nbrps(conf, xconf);
781 merge_l2vpns(conf, xconf);
782 free(xconf);
786 merge_global(struct ldpd_conf *conf, struct ldpd_conf *xconf)
789 if (conf->rtr_id.s_addr != xconf->rtr_id.s_addr) {
794 xconf->rtr_id.s_addr == INADDR_ANY) {
799 conf->rtr_id = xconf->rtr_id;
802 conf->rdomain= xconf->rdomain;
804 if (conf->trans_pref != xconf->trans_pref) {
807 conf->trans_pref = xconf->trans_pref;
811 (xconf->flags & F_LDPD_DS_CISCO_INTEROP)) {
816 conf->flags = xconf->flags;
881 merge_ifaces(struct ldpd_conf *conf, struct ldpd_conf *xconf)
887 if ((xi = if_lookup(xconf, iface->ifindex)) == NULL) {
894 LIST_FOREACH_SAFE(xi, &xconf->iface_list, entry, itmp) {
927 merge_tnbrs(struct ldpd_conf *conf, struct ldpd_conf *xconf)
936 if ((xt = tnbr_find(xconf, tnbr->af, &tnbr->addr)) == NULL) {
946 LIST_FOREACH_SAFE(xt, &xconf->tnbr_list, entry, ttmp) {
968 merge_nbrps(struct ldpd_conf *conf, struct ldpd_conf *xconf)
976 if ((xn = nbr_params_find(xconf, nbrp->lsr_id)) == NULL) {
990 LIST_FOREACH_SAFE(xn, &xconf->nbrp_list, entry, ntmp) {
1040 merge_l2vpns(struct ldpd_conf *conf, struct ldpd_conf *xconf)
1046 if ((xl = l2vpn_find(xconf, l2vpn->name)) == NULL) {
1062 LIST_FOREACH_SAFE(xl, &xconf->l2vpn_list, entry, ltmp) {
1089 merge_l2vpn(struct ldpd_conf *xconf, struct l2vpn *l2vpn, struct l2vpn *xl)
1255 merge_auths(struct ldpd_conf *conf, struct ldpd_conf *xconf)
1261 xauth = auth_find(xconf, auth);
1271 LIST_FOREACH_SAFE(xauth, &xconf->auth_list, entry, nauth) {
1287 struct ldpd_conf *xconf;
1289 xconf = calloc(1, sizeof(*xconf));
1290 if (xconf == NULL)
1293 LIST_INIT(&xconf->iface_list);
1294 LIST_INIT(&xconf->tnbr_list);
1295 LIST_INIT(&xconf->nbrp_list);
1296 LIST_INIT(&xconf->l2vpn_list);
1297 LIST_INIT(&xconf->auth_list);
1299 return (xconf);
1305 struct ldpd_conf *xconf;
1313 xconf = config_new_empty();
1314 xconf->ipv4 = conf->ipv4;
1315 xconf->ipv6 = conf->ipv6;
1316 xconf->rtr_id = conf->rtr_id;
1317 xconf->trans_pref = conf->trans_pref;
1318 xconf->flags = conf->flags;
1319 merge_config(conf, xconf);