~ubuntu-branches/ubuntu/saucy/neutron/saucy-security

« back to all changes in this revision

Viewing changes to neutron/tests/unit/services/metering/drivers/test_iptables_driver.py

  • Committer: Package Import Robot
  • Author(s): Jamie Strandboge
  • Date: 2014-05-05 12:19:54 UTC
  • mfrom: (14.1.4 saucy-proposed)
  • Revision ID: package-import@ubuntu.com-20140505121954-gora8vy6l804ht3n
Tags: 1:2013.2.3-0ubuntu1.1
SECURITY UPDATE: no change rebuild for security to fix CVE-2014-0056
(1faec83a)

Show diffs side-by-side

added added

removed removed

Lines of Context:
36
36
        self.addCleanup(self.utils_exec_p.stop)
37
37
        self.iptables_cls_p = mock.patch(
38
38
            'neutron.agent.linux.iptables_manager.IptablesManager')
39
 
        iptables_cls = self.iptables_cls_p.start()
 
39
        self.iptables_cls = self.iptables_cls_p.start()
40
40
        self.addCleanup(self.iptables_cls_p.stop)
41
41
        self.iptables_inst = mock.Mock()
42
42
        self.v4filter_inst = mock.Mock()
45
45
        self.v6filter_inst.chains = []
46
46
        self.iptables_inst.ipv4 = {'filter': self.v4filter_inst}
47
47
        self.iptables_inst.ipv6 = {'filter': self.v6filter_inst}
48
 
        iptables_cls.return_value = self.iptables_inst
 
48
        self.iptables_cls.return_value = self.iptables_inst
49
49
        cfg.CONF.set_override('interface_driver',
50
50
                              'neutron.agent.linux.interface.NullDriver')
51
 
        self.router_info_inst = mock.Mock()
52
 
        self.router_info_inst.iptables_manager = self.iptables_inst
53
 
 
 
51
        cfg.CONF.set_override('root_helper',
 
52
                              'fake_sudo',
 
53
                              'AGENT')
54
54
        self.metering = iptables_driver.IptablesMeteringDriver('metering',
55
55
                                                               cfg.CONF)
56
56
 
 
57
    def test_root_helper(self):
 
58
        routers = [{'_metering_labels': [
 
59
            {'id': 'c5df2fe5-c600-4a2a-b2f4-c0fb6df73c83',
 
60
             'rules': []}],
 
61
            'admin_state_up': True,
 
62
            'gw_port_id': '7d411f48-ecc7-45e0-9ece-3b5bdb54fcee',
 
63
            'id': '473ec392-1711-44e3-b008-3251ccfc5099',
 
64
            'name': 'router1',
 
65
            'status': 'ACTIVE',
 
66
            'tenant_id': '6c5f5d2a1fa2441e88e35422926f48e8'}]
 
67
        self.metering.add_metering_label(None, routers)
 
68
 
 
69
        self.iptables_cls.assert_called_with(root_helper='fake_sudo',
 
70
                                             namespace=mock.ANY,
 
71
                                             binary_name=mock.ANY)
 
72
 
57
73
    def test_add_metering_label(self):
58
74
        routers = [{'_metering_labels': [
59
75
            {'id': 'c5df2fe5-c600-4a2a-b2f4-c0fb6df73c83',
126
142
                               '',
127
143
                               wrap=False),
128
144
                 call.add_rule('neutron-meter-r-eeef45da-c60',
129
 
                               '-i qg-7d411f48-ec -d 20.0.0.0/24 -j '
130
 
                               'neutron-meter-l-eeef45da-c60',
131
 
                               wrap=False, top=False)]
 
145
                               '-i qg-7d411f48-ec -d 20.0.0.0/24 -j RETURN',
 
146
                               wrap=False, top=True)]
132
147
 
133
148
        self.v4filter_inst.assert_has_calls(calls)
134
149
 
178
193
                               wrap=False, top=False),
179
194
                 call.empty_chain('neutron-meter-r-c5df2fe5-c60', wrap=False),
180
195
                 call.add_rule('neutron-meter-r-c5df2fe5-c60',
181
 
                               '-o qg-6d411f48-ec -d 10.0.0.0/24 -j '
182
 
                               'neutron-meter-l-c5df2fe5-c60',
183
 
                               wrap=False, top=False),
 
196
                               '-o qg-6d411f48-ec -d 10.0.0.0/24 -j RETURN',
 
197
                               wrap=False, top=True),
184
198
                 call.add_rule('neutron-meter-r-c5df2fe5-c60',
185
199
                               '-i qg-6d411f48-ec -d 20.0.0.0/24 -j '
186
200
                               'neutron-meter-l-c5df2fe5-c60',
342
356
                               '',
343
357
                               wrap=False),
344
358
                 call.add_rule('neutron-meter-r-eeef45da-c60',
345
 
                               '-i qg-7d411f48-ec -d 20.0.0.0/24 -j '
346
 
                               'neutron-meter-l-eeef45da-c60',
347
 
                               wrap=False, top=False),
 
359
                               '-i qg-7d411f48-ec -d 20.0.0.0/24 -j RETURN',
 
360
                               wrap=False, top=True),
348
361
                 call.remove_chain('neutron-meter-l-c5df2fe5-c60', wrap=False),
349
362
                 call.remove_chain('neutron-meter-r-c5df2fe5-c60', wrap=False),
350
363
                 call.add_chain('neutron-meter-l-c5df2fe5-c60', wrap=False),