Skip to content

Commit

Permalink
Added missing check.
Browse files Browse the repository at this point in the history
  • Loading branch information
ccie18643 committed Sep 7, 2024
1 parent 0fab8a6 commit 8fd3a94
Show file tree
Hide file tree
Showing 9 changed files with 706 additions and 4 deletions.
45 changes: 45 additions & 0 deletions pytcp/protocols/dhcp4/dhcp4__base.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#!/usr/bin/env python3

################################################################################
## ##
## PyTCP - Python TCP/IP stack ##
## Copyright (C) 2020-present Sebastian Majewski ##
## ##
## This program is free software: you can redistribute it and/or modify ##
## it under the terms of the GNU General Public License as published by ##
## the Free Software Foundation, either version 3 of the License, or ##
## (at your option) any later version. ##
## ##
## This program is distributed in the hope that it will be useful, ##
## but WITHOUT ANY WARRANTY; without even the implied warranty of ##
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ##
## GNU General Public License for more details. ##
## ##
## You should have received a copy of the GNU General Public License ##
## along with this program. If not, see <https://www.gnu.org/licenses/>. ##
## ##
## Author's email: [email protected] ##
## Github repository: https://github.com/ccie18643/PyTCP ##
## ##
################################################################################


"""
This module contains the DHCPv4 protccol base class.
pytcp/protocols/dhcp4/dhcp4__base.py
ver 3.0.2
"""


from __future__ import annotations

from pytcp.lib.proto import Proto
from pytcp.protocols.dhcp4.dhcp4__header import Dhcp4HeaderProperties


class Dhcp4(Proto, Dhcp4HeaderProperties):
"""
The Ethernet protocol base class.
"""
58 changes: 58 additions & 0 deletions pytcp/protocols/dhcp4/dhcp4__enums.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#!/usr/bin/env python3

################################################################################
## ##
## PyTCP - Python TCP/IP stack ##
## Copyright (C) 2020-present Sebastian Majewski ##
## ##
## This program is free software: you can redistribute it and/or modify ##
## it under the terms of the GNU General Public License as published by ##
## the Free Software Foundation, either version 3 of the License, or ##
## (at your option) any later version. ##
## ##
## This program is distributed in the hope that it will be useful, ##
## but WITHOUT ANY WARRANTY; without even the implied warranty of ##
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ##
## GNU General Public License for more details. ##
## ##
## You should have received a copy of the GNU General Public License ##
## along with this program. If not, see <https://www.gnu.org/licenses/>. ##
## ##
## Author's email: [email protected] ##
## Github repository: https://github.com/ccie18643/PyTCP ##
## ##
################################################################################


"""
This module contains the DHCPv4 protocol enum classes.
pytcp/protocols/dhcp4/dhcp4__enums.py
ver 3.0.2
"""


from __future__ import annotations

from pytcp.lib.proto_enum import ProtoEnumWord


class Dhcp4Operation(ProtoEnumWord):
"""
The DHCPv4 header 'oper' field values.
"""

REQUEST = 0x01
REPLY = 0x02


class Dhcp4HardwareType(ProtoEnumWord):
"""
The DHCPv4 header 'htype' field values.
"""

ETHERNET = 0x01


DHCP4__HARDWARE_LEN__ETHERNET = 6
Loading

0 comments on commit 8fd3a94

Please sign in to comment.