MPA(3)
π MPA(3) β the mpa 1.1 era, bestie π
okay so like. hi. welcome to the MPA manual page, version 1.1, and I promise it's less scary than it looks π«Ά
β¨ NAME β¨
packet.transport.mpa β it's the MPA module, that's it, that's the name π
πΈ DESCRIPTION πΈ
It decodes the MPA layer. that's the whole vibe. you feed it stuff, it unwraps the MPA goodness for you β¨
and if you're the kind of girl who reads the source material (respect, honestly), this is all coming from:
RFC 5044 Marker PDU Aligned Framing for TCP Specification
like. she's canon. she's cited. periodt π
π CLASSES π
π class FrameType(packet.utils.Enum)
enum OpCode
(yes that's the whole thing, it's a little enum, let her live π)
π class MPA(baseobj.BaseObj)
the MPA object herself. main character energy fr fr π
Usage:
from packet.transport.mpa import MPA
x = MPA(pktt)
Object definition:
MPA(
[
# MPA Full Operation Phase
psize = int, # Length of ULPDU
pad = int, # Length of Padding bytes
crc = int, # CRC 32 check value
] | [
# Connection Setup
ftype = int, # Frame type
marker = int, # Marker usage required
use_crc = int, # CRC usage
reject = int, # Rejected connection
revision = int, # Revision of MPA
psize = int, # Size of private data
data = bytes, # Private data
]
)
so there's two modes she can be in, and the object picks based on what you're doing: the MPA Full Operation Phase one (psize, pad, crc) or the Connection Setup one (ftype, marker, use_crc, reject, revision, psize, data). not me thinking that's actually kinda elegant πβ¨
π¦ Methods defined here:
__init__(self, pktt)β Constructor π
Initializes the object's private data. that's her job. she's doing it.
pktt: the Packet trace object (packet.pktt.Pktt), so this layer can reach up and grab its parent layers. iykyk β she needs the context, she's nosy in a productive way π«Ά
π SEE ALSO π
go read her friends, they're all iconic:
π BUGS π
No known bugs.
not a single one. she's flawless. she ate and left no crumbs πβ¨ (lowkey terrifying but okay we love a clean record)
πΈ AUTHOR πΈ
Jorge Mora (mora@netapp.com) β the legend, the moment, the whole reason we're here π
and that's the page!! this was NFStest 3.2, dated 21 March 2023, brought to you by the mpa 1.1 girlies π tysm for reading, go decode some MPA, slay π
β¨π¦
π¦ where this page comes from
- debian trixie: nfstest 3.2-3
- fedora 43: NFStest 3.2-14.fc43 Β· GPL-2.0-or-later
- fedora 44: NFStest 3.2-16.fc44 Β· GPL-2.0-or-later
- ubuntu noble: nfstest 3.2-2
- ubuntu questing: nfstest 3.2-3
- ubuntu resolute: nfstest 3.2-3build1
- ubuntu stonking: nfstest 3.2-5
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms