BIND 10 #2604: DHCP Testing: V6 Options
BIND 10 Development
do-not-reply at isc.org
Mon Feb 4 17:00:36 UTC 2013
#2604: DHCP Testing: V6 Options
-------------------------------------+-------------------------------------
Reporter: stephen | Owner: tomek
Type: task | Status:
Priority: medium | reviewing
Component: dhcp | Milestone:
Keywords: | Sprint-DHCP-20130214
Sensitive: 0 | Resolution:
Sub-Project: DHCP | CVSS Scoring:
Estimated Difficulty: 0 | Defect Severity: N/A
Total Hours: 0 | Feature Depending on Ticket:
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Changes (by marcin):
* owner: marcin => tomek
Comment:
First of all, this is going to be a really useful stuff. You used your
contempt against manual testing in the right way. :-)
'''info.txt'''
Instead of:
{{{
wget scapy.net
mv index.html scapy-latest.zip
unzip scapy.zip
}}}
maybe something like this would be easier
{{{
wget http://www.secdev.org/projects/scapy/files/scapy-latest.zip
unzip scapy-latest
}}}
?
BTW, the !''unzip scapy.zip!'' will fail because you renamed that to
!''scapy-latest.zip!''.
Also scapy has to be installed with the root privileges:
{{{
sudo python setup.py install
}}}
It should be mentioned that lettuce must be started as root, otherwise it
will fail.
It should be mentioned that these are the known issues with scapy:
{{{
WARNING: No route found for IPv6 destination :: (no default route?)
/usr/local/lib/python2.6/dist-packages/scapy/crypto/cert.py:10:
DeprecationWarning: the sha module is deprecated; use the hashlib module
instead
import os, sys, math, socket, struct, sha, hmac, string, time
/usr/local/lib/python2.6/dist-packages/scapy/crypto/cert.py:11:
DeprecationWarning: The popen2 module is deprecated. Use the subprocess
module.
import random, popen2, tempfile
}}}
and that their occurrence has no impact on the test result. Otherwise,
someone who has a little experience with scapy and is debugging the
particular failure may think that issues mentioned in the warning messages
are direct or indirect reasons for the failure (until he finds out that it
is not the case, but the time has been wasted already).
'''General to all tests'''
There are no tests for options being sent in a REPLY message. In theory
you could have all tests passing but no option would be sent to the user
in a REPLY messages if we failed to append them to REPLY messages on the
Kea side.
Also, there is no test that checks if the server manages to send multiple
options in a single packet. Can this be done with the current code by just
adding test scenario which requests multiple options and checks them?
Such a test would check that server is not limited to just adding a single
option.
There is no test that checks how the server behaves when the non-
configured option is requested.
I am aware of the time constraints so it may be unrealistic to write these
tests before the Feb 12th deadline. If so it is alright to skip them for
now. However the tests that check options being added to a REQUEST
messages should be fairly simple given that the logic is very similar to
tests that check ADVERTISE and I would suggest to assign them the highest
priority if time permits to write any additional tests.
'''Script files'''
The dates in the copyright headers are randomly chosen between 2011, 2012
and 2013. :-)
'''msg6.py'''
client_send_msg: inconsistency between various cases: SOLICIT is in upper
case, other cases are in lower case. Personally, I prefer upper case.
send_wait_for_message:
The comment says that the function fails if the message is not found after
10 seconds while the timeout value in the function body is set to 2 (I
presume seconds).
'''srv_control.py'''
start_srv_isc_dhcp:
{{{
world.processes.add_process(step, "dibbler-server", args)
}}}
!''dibbler-server!'' should be changed to !''isc-dhcp-server!'' I belive.
--
Ticket URL: <http://bind10.isc.org/ticket/2604#comment:4>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list