Provided by:
python-pydhcplib_0.6.2-2_all 
NOM
pydhcplib.DhcpBasicPacket - Classe de base contenant un paquet dhcp.
SYNOPSIS
from pydhcplib.DhcpBasicPacket import DhcpBasicPacket
packet = DchpBasicPacket()
DESCRIPTION
La classe pydhcplib.DhcpBasicPacket est la classe elementaire de
traitement d'un paquet dhcp. Elle contient le strict necessaire au
traitement de paquets, tous les ajouts et fonctions evoluees sont
deportees vers la classe DhcpPacket.
Un paquet dhcp est constitue de 2 parties distinctes : l'entete et les
options. L'entete d'un paquet a une taille fixe, et tous les champs
sont definis (voir RFC 2131). La taille de la partie optionnelle est
quand a elle variable et ne contenir qu'une seule option. Dans le
DhcpBasicPacket, chaques champs, optionnel ou non, est manipule par les
memes fonction. Ainsi les methodes SetOption ou GetOption servent
autant a fixer ou recuperer le contenu d'un champs de l'entete qu'un
champs optionnel.
METHODES
IsDhcpPacket() - Renvoie True si le "Magic Cookie" est retrouve au bon
endroit dans le packet. Sinon renvoie False.
DeleteOption(string) - Sert a supprimer un champs ou son contenu. Si le
champs n'existe pas, False est renvoye. Si le champs est dans la partie
optionnelle du paquet dhcp, il est supprime. Si le champs est dans
l'entete du paquet, l'ensemble des octets le constituant sont mis a 0.
string est le nom de l'option a supprimer.
GetOption(string) - Sert a recuperer la valeur d'une option. La methode
renvoie une liste d'octet avec le contenu de l'option ou False si
l'option n'existe pas. Les champs de l'entete du paquet dhcp sont
consideres comme des options et renvois toujours quelquechose.
SetOption(string,list) - Sert a fixer la valeur d'une option. Le
premier argument est le nom de l'option, le deuxieme une liste d'octet
(comme [0,25,200]). Les noms d'options possible sont les noms des
champs de l'entete et les noms des options definies dans le module
pydhcplib.dhcp_constants. La taille de la liste d'octet depend de la
definition du champs dans pydhcplib.dhcp_constants.
IsOption(string) - L'argument est un nom d'option. Renvoie True si
l'option existe dans le paquet. Renvoie toujours True pour un champs de
l'entete. Renvoie False si l'option n'existe pas et n'est pas un champs
d'entete.
EncodePacket() - Genere un paquet dhcp (une chaine de caractere)
encodant l'entete ainsi que toutes les options definies prealablement
dans le paquet (sans oublier le "Magic Cookie"). Cette chaine est un
paquet dhcp valide.
DecodePacket(string) - Prend en argument un paquet dhcp "brut" (une
chaine de caractere en fait) et decode tous les elements pour les
rendre manipulable avec SetOption, GetOption, ou DeleteOption.
EXEMPLES
Programme d'exemple :
from pydhcplib.dhcp_packet import DhcpPacket
from pydhcplib.type_strlist import strlist
from pydhcplib.type_ipv4 import ipv4
packet = DhcpBasicPacket()
packet.SetOption("domain_name",strlist("anemon.org").list())
packet.SetOption("router",ipv4("192.168.0.1").list()+[6,4,2,1])
packet.SetOption("time_server",[100,100,100,7,6,4,2,1])
packet.SetOption("yiaddr",[192,168,0,18])
VOIR AUSSI
pydhcp(8), pydhcplib.hwmac(3), pydhcplib.ipv4(3), pydhcplib.strlist(3),
pydhcplib.DhcpPacket(3), pydhcplib.DhcpBasicPacket(3),
pydhcplib.DhcpNetwork(3), pydhcplib.DhcpClient(3),
pydhcplib.DhcpServer(3)
BUGS
Probablement plein... pydhcplib est en cours de developpement. Voir
http://pydhcplib.tuxfamily.org/ pour plus d'informations.
AUTHOR
Mathieu Ignacio (mignacio[AT]april.org)
pydhcplib.DhcpBasicPacket(3)