~ubuntu-branches/ubuntu/precise/corosync/precise-proposed

« back to all changes in this revision

Viewing changes to lib/cfg.c

  • Committer: Bazaar Package Importer
  • Author(s): Martin Loschwitz
  • Date: 2011-10-19 14:32:18 UTC
  • mfrom: (1.1.6 upstream) (5.1.16 sid)
  • Revision ID: james.westby@ubuntu.com-20111019143218-ew8phl0raqyog844
Tags: 1.4.2-1
* Changed my email address in debian/control
* Add corosync-blackbox to the corosync package
* Imported Upstream version 1.4.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
651
651
        int i;
652
652
        struct iovec iov;
653
653
        void *return_address;
 
654
        const char *addr_buf;
654
655
 
655
656
        error = hdb_error_to_cs(hdb_handle_get (&cfg_hdb, cfg_handle,
656
657
                (void *)&cfg_instance));
681
682
        if (res_lib_cfg_get_node_addrs->family == AF_INET6)
682
683
                addrlen = sizeof(struct sockaddr_in6);
683
684
 
684
 
        for (i=0; i<max_addrs && i<res_lib_cfg_get_node_addrs->num_addrs; i++) {
 
685
        for (i = 0, addr_buf = (char *)res_lib_cfg_get_node_addrs->addrs;
 
686
            i < max_addrs && i<res_lib_cfg_get_node_addrs->num_addrs;
 
687
            i++, addr_buf += TOTEMIP_ADDRLEN) {
685
688
                struct sockaddr_in *in;
686
689
                struct sockaddr_in6 *in6;
687
690
 
690
693
                if (res_lib_cfg_get_node_addrs->family == AF_INET) {
691
694
                        in = (struct sockaddr_in *)addrs[i].address;
692
695
                        in->sin_family = AF_INET;
693
 
                        memcpy(&in->sin_addr, &res_lib_cfg_get_node_addrs->addrs[i][0], sizeof(struct in_addr));
 
696
                        memcpy(&in->sin_addr, addr_buf, sizeof(struct in_addr));
694
697
                }
695
698
                if (res_lib_cfg_get_node_addrs->family == AF_INET6) {
696
699
                        in6 = (struct sockaddr_in6 *)addrs[i].address;
697
700
                        in6->sin6_family = AF_INET6;
698
 
                        memcpy(&in6->sin6_addr, &res_lib_cfg_get_node_addrs->addrs[i][0], sizeof(struct in6_addr));
 
701
                        memcpy(&in6->sin6_addr, addr_buf, sizeof(struct in6_addr));
699
702
                }
700
703
        }
701
704
        *num_addrs = res_lib_cfg_get_node_addrs->num_addrs;