scapy.contrib.postgres module

class scapy.contrib.postgres.Authentication(_pkt, /, *, tag=82, len=None, method=0, optional=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |                     METHOD                    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |            OPTIONAL           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. Authentication                        
Authentication fields

tag

ByteTagField

82

len

FieldLenField

None

method

IntEnumField

0

optional

StrLenField

None

class scapy.contrib.postgres.BackendKeyData(_pkt, /, *, tag=75, len=None, pid=0, key=0)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |                      PID                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |                      KEY                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                       Fig. BackendKeyData                        
BackendKeyData fields

tag

ByteTagField

75

len

FieldLenField

None

pid

SignedIntField

0

key

SignedIntField

0

class scapy.contrib.postgres.Bind(_pkt, /, *, tag=63, len=None, destination=b'', statement=b'', codes_count=0, codes=[], values_count=0, values=[], results_count=0, results=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          DESTINATION          |   STATEMENT   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          CODES COUNT          |     CODES     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          VALUES COUNT         |     VALUES    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |         RESULTS COUNT         |    RESULTS    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                            Fig. Bind                             
Bind fields

tag

ByteTagField

63

len

FieldLenField

None

destination

StrNullField

b''

statement

StrNullField

b''

codes_count

FieldLenField

0

codes

FieldListField

[]

values_count

FieldLenField

0

values

PacketListField

[]

results_count

FieldLenField

0

results

FieldListField

[]

class scapy.contrib.postgres.BindComplete(_pkt, /, *, tag=50, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                        Fig. BindComplete                         
BindComplete fields

tag

ByteTagField

50

len

SignedIntField

4

class scapy.contrib.postgres.ByteTagField(default)[source]

Bases: ByteField

randval()[source]
class scapy.contrib.postgres.CancelRequest(_pkt, /, *, len=16, request_code=80877102, process_id=0, secret=0)[source]

Bases: Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              LEN                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          REQUEST CODE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                           PROCESS ID                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             SECRET                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. CancelRequest                        
CancelRequest fields

len

SignedIntField

16

request_code

SignedIntField

80877102

process_id

SignedIntField

0

secret

SignedIntField

0

class scapy.contrib.postgres.Close(_pkt, /, *, tag=67, len=None, close_type=b'S', statement=b'')[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |   CLOSE TYPE  |           STATEMENT           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            Fig. Close                            
Close fields

tag

ByteTagField

67

len

FieldLenField

None

close_type

CharEnumField

b'S'

statement

StrNullField

b''

class scapy.contrib.postgres.CloseComplete(_pkt, /, *, tag=51, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                        Fig. CloseComplete                        
CloseComplete fields

tag

ByteTagField

51

len

SignedIntField

4

class scapy.contrib.postgres.ColumnDescription(_pkt, /, *, col=None, tableoid=0, colno=0, typeoid=0, typelen=0, typemod=0, format=0)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              COL              |            TABLEOID           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |             COLNO             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                            TYPEOID                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            TYPELEN            |            TYPEMOD            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                               |             FORMAT            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. ColumnDescription                      
ColumnDescription fields

col

StrNullField

None

tableoid

SignedIntField

0

colno

SignedShortField

0

typeoid

SignedIntField

0

typelen

SignedShortField

0

typemod

SignedIntField

0

format

SignedShortField

0

class scapy.contrib.postgres.CommandComplete(_pkt, /, *, tag=67, len=None, cmdtag=b'')[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |             CMDTAG            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. CommandComplete                       
CommandComplete fields

tag

ByteTagField

67

len

FieldLenField

None

cmdtag

StrLenField

b''

class scapy.contrib.postgres.CopyBothResponse(_pkt, /, *, tag=87, len=None, format=0, ncols=0, cols=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |     FORMAT    |             NCOLS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              COLS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. CopyBothResponse                       
CopyBothResponse fields

tag

ByteTagField

87

len

FieldLenField

None

format

ByteField

0

ncols

ShortField

0

cols

FieldListField

[]

class scapy.contrib.postgres.CopyData(_pkt, /, *, tag=100, len=None, data=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |              DATA             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. CopyData                           
CopyData fields

tag

ByteTagField

100

len

FieldLenField

None

data

StrLenField

None

class scapy.contrib.postgres.CopyDone(_pkt, /, *, tag=99, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                          Fig. CopyDone                           
CopyDone fields

tag

ByteTagField

99

len

SignedIntField

4

class scapy.contrib.postgres.CopyFail(_pkt, /, *, tag=102, len=None, reason=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |             REASON            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. CopyFail                           
CopyFail fields

tag

ByteTagField

102

len

FieldLenField

None

reason

StrLenField

None

class scapy.contrib.postgres.CopyInResponse(_pkt, /, *, tag=71, len=None, format=0, ncols=0, cols=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |     FORMAT    |             NCOLS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              COLS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. CopyInResponse                        
CopyInResponse fields

tag

ByteTagField

71

len

FieldLenField

None

format

ByteField

0

ncols

ShortField

0

cols

FieldListField

[]

class scapy.contrib.postgres.CopyOutResponse(_pkt, /, *, tag=72, len=None, format=0, ncols=0, cols=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |     FORMAT    |             NCOLS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              COLS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. CopyOutResponse                       
CopyOutResponse fields

tag

ByteTagField

72

len

FieldLenField

None

format

ByteField

0

ncols

ShortField

0

cols

FieldListField

[]

class scapy.contrib.postgres.DataRow(_pkt, /, *, tag=68, len=None, numfields=0, data=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |           NUMFIELDS           |      DATA     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                           Fig. DataRow                           
DataRow fields

tag

ByteTagField

68

len

FieldLenField

None

numfields

FieldLenField

0

data

PacketListField

[]

class scapy.contrib.postgres.Describe(_pkt, /, *, tag=68, len=None, close_type=b'S', statement=b'')[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |   CLOSE TYPE  |           STATEMENT           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. Describe                           
Describe fields

tag

ByteTagField

68

len

FieldLenField

None

close_type

CharEnumField

b'S'

statement

StrNullField

b''

class scapy.contrib.postgres.EmptyQueryResponse(_pkt, /, *, tag=73, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                     Fig. EmptyQueryResponse                      
EmptyQueryResponse fields

tag

ByteTagField

73

len

SignedIntField

4

class scapy.contrib.postgres.ErrorResponse(_pkt, /, *, tag=69, len=None, error_fields=[], terminator=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          ERROR FIELDS         |   TERMINATOR  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. ErrorResponse                        
ErrorResponse fields

tag

ByteTagField

69

len

FieldLenField

None

error_fields

FieldListField

[]

terminator

ByteField

None

class scapy.contrib.postgres.ErrorResponseField(name: str, default: I | None, fmt: str = 'H', remain: int = 0)[source]

Bases: StrNullField

m2i(pkt, x)[source]

Unpack into a tuple of Field, Value.

class scapy.contrib.postgres.Execute(_pkt, /, *, tag=69, len=None, portal=b'', rows=0)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |             PORTAL            |      ROWS     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Fig. Execute                           
Execute fields

tag

ByteTagField

69

len

FieldLenField

None

portal

StrNullField

b''

rows

SignedIntField

0

class scapy.contrib.postgres.Flush(_pkt, /, *, tag=72, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                            Fig. Flush                            
Flush fields

tag

ByteTagField

72

len

SignedIntField

4

class scapy.contrib.postgres.FunctionCallResponse(_pkt, /, *, tag=86, len=None, result_len=None, result=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |           RESULT LEN          |     RESULT    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                    Fig. FunctionCallResponse                     
FunctionCallResponse fields

tag

ByteTagField

86

len

FieldLenField

None

result_len

FieldLenField

None

result

StrLenField

None

class scapy.contrib.postgres.GSSENCRequest(_pkt, /, *, len=8, request_code=80877104)[source]

Bases: Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              LEN                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          REQUEST CODE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. GSSENCRequest                        
GSSENCRequest fields

len

SignedIntField

8

request_code

SignedIntField

80877104

class scapy.contrib.postgres.KeepAlive(_pkt, /, *, len=4)[source]

Bases: Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              LEN                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                          Fig. KeepAlive                          
KeepAlive fields

len

SignedIntField

4

class scapy.contrib.postgres.NegotiateProtocolVersion(_pkt, /, *, tag=118, len=None, min_minor_version=0, unrecognized_options=0, option=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |               MIN MINOR VERSION               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |              UNRECOGNIZED OPTIONS             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |             OPTION            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Fig. NegotiateProtocolVersion                   
NegotiateProtocolVersion fields

tag

ByteTagField

118

len

FieldLenField

None

min_minor_version

SignedIntField

0

unrecognized_options

SignedIntField

0

option

StrNullField

None

class scapy.contrib.postgres.NoData(_pkt, /, *, tag=110, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                           Fig. NoData                            
NoData fields

tag

ByteTagField

110

len

SignedIntField

4

class scapy.contrib.postgres.NoticeResponse(_pkt, /, *, tag=78, len=None, notice_fields=[], terminator=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |         NOTICE FIELDS         |   TERMINATOR  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. NoticeResponse                        
NoticeResponse fields

tag

ByteTagField

78

len

FieldLenField

None

notice_fields

FieldListField

[]

terminator

ByteField

None

class scapy.contrib.postgres.NotificationResponse(_pkt, /, *, tag=65, len=None, process_id=0, channel=None, payload=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |                   PROCESS ID                  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |            CHANNEL            |    PAYLOAD    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                    Fig. NotificationResponse                     
NotificationResponse fields

tag

ByteTagField

65

len

_FieldsLenField

None

process_id

SignedIntField

0

channel

StrNullField

None

payload

StrNullField

None

class scapy.contrib.postgres.ParameterDescription(_pkt, /, *, tag=116, len=None, dtypes_len=0, dtypes=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |           DTYPES LEN          |     DTYPES    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                    Fig. ParameterDescription                     
ParameterDescription fields

tag

ByteTagField

116

len

FieldLenField

None

dtypes_len

SignedShortField

0

dtypes

FieldListField

[]

class scapy.contrib.postgres.ParameterStatus(_pkt, /, *, tag=83, len=None, parameter=b'', value=b'')[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |           PARAMETER           |     VALUE     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                       Fig. ParameterStatus                       
ParameterStatus fields

tag

ByteTagField

83

len

FieldLenField

None

parameter

StrNullField

b''

value

StrNullField

b''

class scapy.contrib.postgres.Parse(_pkt, /, *, tag=80, len=None, destination=b'', query=b'', num_param_dtypes=None, params=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |          DESTINATION          |     QUERY     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |        NUM PARAM DTYPES       |     PARAMS    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                            Fig. Parse                            
Parse fields

tag

ByteTagField

80

len

FieldLenField

None

destination

StrNullField

b''

query

StrNullField

b''

num_param_dtypes

FieldLenField

None

params

FieldListField

[]

class scapy.contrib.postgres.ParseComplete(_pkt, /, *, tag=49, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                        Fig. ParseComplete                        
ParseComplete fields

tag

ByteTagField

49

len

SignedIntField

4

class scapy.contrib.postgres.PasswordMessage(_pkt, /, *, tag=112, len=None, password=None)[source]

Bases: _ZeroPadding

Identifies the message as a password response. Note that this is also used for GSSAPI, SSPI and SASL response messages. The exact message type can be deduced from the context.

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |            PASSWORD           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. PasswordMessage                       
PasswordMessage fields

tag

ByteTagField

112

len

FieldLenField

None

password

StrLenField

None

class scapy.contrib.postgres.PortalSuspended(_pkt, /, *, tag=115, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                       Fig. PortalSuspended                       
PortalSuspended fields

tag

ByteTagField

115

len

SignedIntField

4

class scapy.contrib.postgres.PostgresBackend(_pkt, /, *, contents=[])[source]

Bases: _BasePostgres

aliastypes
cls_mapping = {b'1': <class 'scapy.contrib.postgres.ParseComplete'>, b'2': <class 'scapy.contrib.postgres.BindComplete'>, b'3': <class 'scapy.contrib.postgres.CloseComplete'>, b'A': <class 'scapy.contrib.postgres.NotificationResponse'>, b'C': <class 'scapy.contrib.postgres.CommandComplete'>, b'D': <class 'scapy.contrib.postgres.DataRow'>, b'E': <class 'scapy.contrib.postgres.ErrorResponse'>, b'G': <class 'scapy.contrib.postgres.CopyInResponse'>, b'H': <class 'scapy.contrib.postgres.CopyOutResponse'>, b'I': <class 'scapy.contrib.postgres.EmptyQueryResponse'>, b'K': <class 'scapy.contrib.postgres.BackendKeyData'>, b'N': <class 'scapy.contrib.postgres.NoticeResponse'>, b'R': <class 'scapy.contrib.postgres.Authentication'>, b'S': <class 'scapy.contrib.postgres.ParameterStatus'>, b'T': <class 'scapy.contrib.postgres.RowDescription'>, b'V': <class 'scapy.contrib.postgres.FunctionCallResponse'>, b'W': <class 'scapy.contrib.postgres.CopyBothResponse'>, b'Z': <class 'scapy.contrib.postgres.ReadyForQuery'>, b'c': <class 'scapy.contrib.postgres.CopyDone'>, b'd': <class 'scapy.contrib.postgres.CopyData'>, b'n': <class 'scapy.contrib.postgres.NoData'>, b's': <class 'scapy.contrib.postgres.PortalSuspended'>, b't': <class 'scapy.contrib.postgres.ParameterDescription'>, b'v': <class 'scapy.contrib.postgres.NegotiateProtocolVersion'>}
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            CONTENTS           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Fig. PostgresBackend                       
PostgresBackend fields

contents

PacketListField

[]

classmethod tcp_reassemble(data, metadata)[source]
class scapy.contrib.postgres.PostgresFrontend(_pkt, /, *, contents=[])[source]

Bases: _BasePostgres

aliastypes
cls_mapping = {b'B': <class 'scapy.contrib.postgres.Bind'>, b'C': <class 'scapy.contrib.postgres.Close'>, b'D': <class 'scapy.contrib.postgres.Describe'>, b'E': <class 'scapy.contrib.postgres.Execute'>, b'F': <class 'scapy.contrib.postgres._Todo'>, b'H': <class 'scapy.contrib.postgres.Flush'>, b'P': <class 'scapy.contrib.postgres.Parse'>, b'Q': <class 'scapy.contrib.postgres.Query'>, b'S': <class 'scapy.contrib.postgres.Sync'>, b'X': <class 'scapy.contrib.postgres.Terminate'>, b'c': <class 'scapy.contrib.postgres.CopyDone'>, b'd': <class 'scapy.contrib.postgres.CopyData'>, b'f': <class 'scapy.contrib.postgres.CopyFail'>, b'p': <class 'scapy.contrib.postgres.PasswordMessage'>}
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            CONTENTS           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. PostgresFrontend                       
PostgresFrontend fields

contents

PacketListField

[]

classmethod tcp_reassemble(data, metadata)[source]
class scapy.contrib.postgres.Query(_pkt, /, *, tag=81, len=None, query=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |             QUERY             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                            Fig. Query                            
Query fields

tag

ByteTagField

81

len

FieldLenField

None

query

StrNullField

None

class scapy.contrib.postgres.ReadyForQuery(_pkt, /, *, tag=90, len=6, status=b'I')[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |     STATUS    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Fig. ReadyForQuery                        
ReadyForQuery fields

tag

ByteTagField

90

len

SignedIntField

6

status

CharEnumField

b'I'

class scapy.contrib.postgres.RowDescription(_pkt, /, *, tag=84, len=None, numfields=0, cols=[])[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |           NUMFIELDS           |      COLS     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                       Fig. RowDescription                        
RowDescription fields

tag

ByteTagField

84

len

FieldLenField

None

numfields

SignedShortField

0

cols

PacketListField

[]

class scapy.contrib.postgres.SSLRequest(_pkt, /, *, length=None, request_code=80877103)[source]

Bases: Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                             LENGTH                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                          REQUEST CODE                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                         Fig. SSLRequest                          
SSLRequest fields

length

FieldLenField

None

request_code

SignedIntField

80877103

class scapy.contrib.postgres.SignedIntStrPair(_pkt, /, *, len=0, data=None)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              LEN                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              DATA             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Fig. SignedIntStrPair                       
SignedIntStrPair fields

len

FieldLenField

0

data

StrLenField

None

class scapy.contrib.postgres.Startup(_pkt, /, *, len=None, protocol_version_major=3, protocol_version_minor=0, options=None)[source]

Bases: Packet

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                              LEN                              |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     PROTOCOL VERSION MAJOR    |     PROTOCOL VERSION MINOR    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|            OPTIONS            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                           Fig. Startup                           
Startup fields

len

FieldLenField

None

protocol_version_major

ShortField

3

protocol_version_minor

ShortField

0

options

_DictStrField

None

class scapy.contrib.postgres.Sync(_pkt, /, *, tag=83, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                            Fig. Sync                             
Sync fields

tag

ByteTagField

83

len

SignedIntField

4

class scapy.contrib.postgres.Terminate(_pkt, /, *, tag=88, len=4)[source]

Bases: _ZeroPadding

aliastypes
fields_desc
Display RFC-like schema
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      TAG      |                      LEN                      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|               |
+-+-+-+-+-+-+-+-+

                          Fig. Terminate                          
Terminate fields

tag

ByteTagField

88

len

SignedIntField

4

scapy.contrib.postgres.determine_pg_field(pkt, lst, cur, remain)[source]