[pox-dev] problem in lldp.py

AASIF MNIT aasifmnit at gmail.com
Mon Jul 8 00:07:59 PDT 2019


Thank you for the clarification.

On Mon, 8 Jul 2019 at 01:04, Murphy McCauley <murphy.mccauley at gmail.com>
wrote:

> The constructor arguments are basically the same for all classes in the
> packet library.
>
> raw is used if you are parsing a raw packet that's held in a bytes/str
> object.
> prev is mostly used internally to build chains of packet headers.  That
> is, since most packet headers are preceded by other packet headers, a
> packet's .prev usually points to the preceding one.  But most of the time
> you don't manually set it in the constructor; usually the right thing
> happens without you having to worry about it.
>
> If you're constructing a packet from scratch, you use keyword arguments.
> This isn't that useful for LLDP packets.  It's more useful for things like
> TCP packets.  It's more or less a shortcut so that you can do things like:
> mypacket = foo(bar = 42)
>
> Instead of:
> mypacket = foo()
> foo.bar = 42
>
> LLDP packets don't really have many fields, though.  They're basically
> just a list of TLVs.  So the more common way to use it is just to create an
> empty LLDP header and append TLVs.  discovery does this, for example:
> https://github.com/noxrepo/pox/blob/eel/pox/openflow/discovery.py#L189
>
> -- Murphy
>
> On Sun, Jul 7, 2019 at 6:01 AM AASIF MNIT <aasifmnit at gmail.com> wrote:
>
>> The following is code from lldp.py, I am unable to get use of parameters
>> used in methods, please help me.
>>
>>
>> def __init__ (self, raw=None, prev=None, **kw):
>>     packet_base.__init__(self)
>>
>>     self.prev = prev
>>
>>     self.next = None
>>     self.tlvs = []
>>
>>     if raw is not None:
>>       self.parse(raw)
>>
>>     self._init(kw)
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.noxrepo.org/pipermail/pox-dev-noxrepo.org/attachments/20190708/354aebf1/attachment-0002.html>


More information about the pox-dev mailing list