~ubuntu-branches/ubuntu/trusty/iproute/trusty-proposed

« back to all changes in this revision

Viewing changes to ip/ipaddress.c

  • Committer: Bazaar Package Importer
  • Author(s): Andreas Henriksson
  • Date: 2010-04-18 18:51:12 UTC
  • mfrom: (1.1.10 upstream) (3.1.8 sid)
  • Revision ID: james.westby@ubuntu.com-20100418185112-mjxyjdcszu5g0lcg
Tags: 20100224-5
* Add patch (applied upstream): build m_xt as a tc module
* Install /usr/lib/tc/m_ipt.so symlink (to m_xt.so)
* Exclude m_ipt.so / m_xt.so from dh_shlibdeps
* Add note about tc filter action ipt needs iptables installed
  to README.Debian.
  (the above changes closes: #576953)

Show diffs side-by-side

added added

removed removed

Lines of Context:
62
62
                iplink_usage();
63
63
        }
64
64
        fprintf(stderr, "Usage: ip addr {add|change|replace} IFADDR dev STRING [ LIFETIME ]\n");
65
 
        fprintf(stderr, "                                                      [ CONFFLAG-LIST]\n");
 
65
        fprintf(stderr, "                                                      [ CONFFLAG-LIST ]\n");
66
66
        fprintf(stderr, "       ip addr del IFADDR dev STRING\n");
67
67
        fprintf(stderr, "       ip addr {show|flush} [ dev STRING ] [ scope SCOPE-ID ]\n");
68
68
        fprintf(stderr, "                            [ to PREFIX ] [ FLAG-LIST ] [ label PATTERN ]\n");
72
72
        fprintf(stderr, "SCOPE-ID := [ host | link | global | NUMBER ]\n");
73
73
        fprintf(stderr, "FLAG-LIST := [ FLAG-LIST ] FLAG\n");
74
74
        fprintf(stderr, "FLAG  := [ permanent | dynamic | secondary | primary |\n");
75
 
        fprintf(stderr, "           tentative | deprecated | CONFFLAG-LIST ]\n");
 
75
        fprintf(stderr, "           tentative | deprecated | dadfailed | temporary |\n");
 
76
        fprintf(stderr, "           CONFFLAG-LIST ]\n");
76
77
        fprintf(stderr, "CONFFLAG-LIST := [ CONFFLAG-LIST ] CONFFLAG\n");
77
78
        fprintf(stderr, "CONFFLAG  := [ home | nodad ]\n");
78
79
        fprintf(stderr, "LIFETIME := [ valid_lft LFT ] [ preferred_lft LFT ]\n");
483
484
        fprintf(fp, "scope %s ", rtnl_rtscope_n2a(ifa->ifa_scope, b1, sizeof(b1)));
484
485
        if (ifa->ifa_flags&IFA_F_SECONDARY) {
485
486
                ifa->ifa_flags &= ~IFA_F_SECONDARY;
486
 
                fprintf(fp, "secondary ");
 
487
                if (ifa->ifa_family == AF_INET6)
 
488
                        fprintf(fp, "temporary ");
 
489
                else
 
490
                        fprintf(fp, "secondary ");
487
491
        }
488
492
        if (ifa->ifa_flags&IFA_F_TENTATIVE) {
489
493
                ifa->ifa_flags &= ~IFA_F_TENTATIVE;
660
664
                } else if (strcmp(*argv, "permanent") == 0) {
661
665
                        filter.flags |= IFA_F_PERMANENT;
662
666
                        filter.flagmask |= IFA_F_PERMANENT;
663
 
                } else if (strcmp(*argv, "secondary") == 0) {
 
667
                } else if (strcmp(*argv, "secondary") == 0 ||
 
668
                           strcmp(*argv, "temporary") == 0) {
664
669
                        filter.flags |= IFA_F_SECONDARY;
665
670
                        filter.flagmask |= IFA_F_SECONDARY;
666
671
                } else if (strcmp(*argv, "primary") == 0) {
678
683
                } else if (strcmp(*argv, "nodad") == 0) {
679
684
                        filter.flags |= IFA_F_NODAD;
680
685
                        filter.flagmask |= IFA_F_NODAD;
 
686
                } else if (strcmp(*argv, "dadfailed") == 0) {
 
687
                        filter.flags |= IFA_F_DADFAILED;
 
688
                        filter.flagmask |= IFA_F_DADFAILED;
681
689
                } else if (strcmp(*argv, "label") == 0) {
682
690
                        NEXT_ARG();
683
691
                        filter.label = *argv;