Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v4.4 #1

Merged
merged 28 commits into from
Oct 4, 2022
Merged
Show file tree
Hide file tree
Changes from 26 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
0701264
Assign a PDUType for Dot11ControlTA
mfontanini Sep 10, 2020
5b082a8
Merge pull request #420 from mfontanini/control-ta-fix
mfontanini Sep 10, 2020
f46dee9
Add changelog for version 4.3
mfontanini Sep 18, 2020
0774a8d
Bump version to 4.4 in CMakeLists.txt
mfontanini Sep 18, 2020
94939dd
Added RFC8355 ICMP Extended Echo support
theDogOfPavlov Dec 29, 2020
553b1fb
Added RFC8335 Extended Echo types
theDogOfPavlov Dec 29, 2020
b3d874d
Merge pull request #426 from theDogOfPavlov/master
mfontanini Dec 29, 2020
1166094
Fix infinite loop when querying BSD routing table
nhutchinson-te Jan 4, 2021
cd40b23
Merge pull request #427 from nhutchinson-te/bsd-routing-table
mfontanini Jan 5, 2021
468159e
Close socket when setsockopt fails
visuve Mar 4, 2021
b447c66
Merge pull request #433 from visuve/master
mfontanini Mar 6, 2021
222611b
Fix wrong address endian
ceerRep Mar 24, 2021
e90e377
Merge pull request #437 from ceerRep/master
mfontanini Mar 28, 2021
16f5795
Fix getter being labeled as setter in dns header file comments
adriancostin6 Apr 23, 2021
5858132
Merge pull request #439 from adriancostin6/dns-comment-fix
mfontanini May 14, 2021
c20c82b
Fix pointer loop bug and add descriptive exceptions
gaya-cohen May 24, 2021
1650b60
change counter variable type and add exception description comment
gaya-cohen May 24, 2021
ed2b3c1
Make new exceptions inherit from malformed_packet and change exceptio…
gaya-cohen Jun 9, 2021
137b56d
fix exception inheritance and change exception names in DNS code
gaya-cohen Jun 9, 2021
14bb185
Merge pull request #444 from gaya-cohen/decompression-bug-fix
mfontanini Jun 9, 2021
a619e4f
IPv6 use interface when sending to link-local dest
fluke-pvan Jul 21, 2021
24ac038
Merge pull request #448 from FlukeCorp/link-local-uses-interface
mfontanini Jul 23, 2021
177d0b4
Fix conflict between variable and macro name
demiquartz Oct 31, 2021
3b006c1
Merge pull request #458 from demiquartz/fix-macro-name-conflict
mfontanini Jan 30, 2022
e3aedc5
Update CHANGES.md for v4.4
mfontanini Feb 17, 2022
5c2b224
Merge tag 'v4.4'
joy4eg Oct 4, 2022
0771b00
Use CMAKE_INSTALL_LIBDIR in CONF_CMAKE_INSTALL_DIR
cottsay May 4, 2022
78058cb
spec: update
joy4eg Oct 4, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
88 changes: 63 additions & 25 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,41 @@
##### v4.4 - Thu Feb 17 14:41:59 UTC 2022

- Add RFC8335 extended echo types to `ICMP` and `ICMPv6` (#426)

- Handle loops in DNS name decompression (#444)

- Fix Windows' `interface` macro colliding with uses of that identifier in the code (#458)

- Sending IPv6 packets to a link-scope destination address now uses the right interface index (#448)

- Fix incorrect endian being used for ICMP's `gateway` and `address_mask` (#437)

- Socket in `PacketSender::open_l3_socket` is now closed if `setsockopt` fails (#433)

- Fix various incorrect doxygen documentation comments (#439).

- Fix infinite loop when querying the routing table in \*BSD (#427)

##### v4.3 - Fri Sep 18 03:08:33 UTC 2020

- Assign a PDUType to `Dot11ControlTA` (#420)

- Don't consider IPv6 ESP header a normal extension header (#374)

- Don't include non-existing headers when installed without libpcap (#382)

- Add `IPv6Address::is_local_unicast` (#369)

- Fix memory leak in `PacketWriter` (#343)

- Fix memory leaks in `OfflinePacketFilter` (#343)

- Fix detection of new TCP stream (#335)

- Introduce `TCP::has_flags` (#334)

- Fix padding calculations in RadioTapWriter (#333)

##### v4.2 - Fri Mar 8 04:15:13 UTC 2019

- Updated location of installed CMake files in unix systems (#331)
Expand Down Expand Up @@ -232,7 +270,7 @@

- Move implementations on utils.h to utils.cpp

- Add ICMPv6 Multicast Listener Query Messages support
- Add ICMPv6 Multicast Listener Query Messages support

- Add ICMPv6 Multicast Listener Report Message support

Expand Down Expand Up @@ -376,7 +414,7 @@

- Added RadioTap channel map type

- Made rsn_information() a const member function to make Dot11ManagementFrame
- Made rsn_information() a const member function to make Dot11ManagementFrame
immutable

- Ensure HAVE_CXX11 is checked when defining TINS_IS_CXX11
Expand Down Expand Up @@ -426,7 +464,7 @@ its value.

- Removed obsolete autotools files.

- Fixed exception thrown when an interface didn't have an IP address
- Fixed exception thrown when an interface didn't have an IP address
on NetworkInterface.

- Added NetworkInterface::is_loopback.
Expand Down Expand Up @@ -470,7 +508,7 @@ conversion on integral constant.

- Added DataLinkType class.

- IPv4Address now uses inet_pton when constructing from string.
- IPv4Address now uses inet_pton when constructing from string.

-------------------------------------------------------------------------------

Expand All @@ -491,8 +529,8 @@ conversion on integral constant.
- Packets can now be constructed from a PDU pointer and take ownership
of it.

- All protocols now set the next layer protocol flag, regardless if
it was already set. This was not done in some protocols,
- All protocols now set the next layer protocol flag, regardless if
it was already set. This was not done in some protocols,
like EthernetII, and as a consequence if the network layer protocol
was replaced by other, the packet would be serialized incorrectly.

Expand Down Expand Up @@ -533,7 +571,7 @@ TCPStreamFollower::follow_streams.

- Added DHCP::hostname to extract the hostname options.

- Removed extra qualifier on SessionKeys::decrypt_unicast which
- Removed extra qualifier on SessionKeys::decrypt_unicast which
produced compilation errors on some platforms.

- PacketSender::send now uses PDU::matches_flag to match specific
Expand All @@ -549,9 +587,9 @@ PDU types.

-------------------------------------------------------------------------------

##### v2.0 - Thu Jan 23 11:09:38 ART 2014
##### v2.0 - Thu Jan 23 11:09:38 ART 2014

- DNSResourceRecord was removed. Now DNS records are added using
- DNSResourceRecord was removed. Now DNS records are added using
DNS::Resource.

- tins.h now includes ppi.h.
Expand All @@ -560,42 +598,42 @@ DNS::Resource.

- Added PDUOption<>::to<> which converts a PDUOption to a specific type.

- Layer 3 packets sent using PacketSender::send_recv for which the
- Layer 3 packets sent using PacketSender::send_recv for which the
answer is a different PDU type.

- ICMP::gateway now uses IPv4Address.

- Added support for ICMP address mask request/reply.

- Fixed bug in PacketSender when using send_recv and a layer 2 PDU. The
interface in which the packet was sent was not the default_interface
- Fixed bug in PacketSender when using send_recv and a layer 2 PDU. The
interface in which the packet was sent was not the default_interface
set when the sender was constructed.

- IP packets sent using PacketSender::send_recv now match ICMP
- IP packets sent using PacketSender::send_recv now match ICMP
responses.

- Added support for ICMP timestamp request/reply packets.
- Added support for ICMP timestamp request/reply packets.
ICMP::matches_response now works with these types of packets as well.

- Added support for reassembling of fragmented IP packets via the
IPv4Reassembler class.

- Fragmented IP packet's inner_pdu PDUs are not decoded now.

- Added 1000ms as the default read timeout used when calling
- Added 1000ms as the default read timeout used when calling
pcap_open_live. Added BaseSniffer::set_timeout to modify this parameter.

- Added the --disable-dot11 configure switch.

- Added support for IPSec.

- Fixed bug triggered when ifaddrs::ifa_addr was null in
- Fixed bug triggered when ifaddrs::ifa_addr was null in
NetworkInterface::addresses.

- Added another overload of Utils::route_entries which returns the
result either than storing it in a parameter.

- Added ARP monitor, WPS detector, DNS queries sniffer and DNS spoofer
- Added ARP monitor, WPS detector, DNS queries sniffer and DNS spoofer
examples.

- Added another Sniffer constructor which doesn't expect the maximum
Expand All @@ -614,10 +652,10 @@ doesn't work well on some linux distributions.

- Added PPI PDU class.

- Fixed a bug in EthernetII triggered when the size of the whole frame
- Fixed a bug in EthernetII triggered when the size of the whole frame
was lower than 60 bytes.

- Added AddressRange class and IPv4Address, IPv6Address and
- Added AddressRange class and IPv4Address, IPv6Address and
HWAddress<>::operator/.

- Added is_broadcast, is_multicast and is_unicast to IPv4, IPv6
Expand All @@ -627,7 +665,7 @@ and HWAddress.

- Done some optimizations on TCP's constructor from buffer.

- Added helper functions to Dot11Data to retrieve the source,
- Added helper functions to Dot11Data to retrieve the source,
destination and BSSID addresses.

- Fixed bugs in DNS triggered when parsing MX and unknown records.
Expand All @@ -647,7 +685,7 @@ types.

- Added WPA2Decrypter class.

- IEEE 802.11 frames are not parsed if the RadioTap FAILED_FCS flag
- IEEE 802.11 frames are not parsed if the RadioTap FAILED_FCS flag
is on.

- RadioTap now calculates its size everytime it's serialized.
Expand All @@ -664,13 +702,13 @@ v1.0 - Tue Apr 23 20:40:57 ART 2013
- Link layer protocol PDUs now don't hold a NetworkInterface. This led
to changes in their constructors.

- Removed the obsolete PDU* parameter taken by several classes'
- Removed the obsolete PDU* parameter taken by several classes'
constructors.

- IP now sets the sender's address automatically when no link layer
PDU is used.

- IP, TCP and UDP now calculate the checksum everytime they're
- IP, TCP and UDP now calculate the checksum everytime they're
serialized.

- Added PDU::rfind_pdu.
Expand All @@ -681,7 +719,7 @@ serialized.

- PacketSender is now movable.

- Added an overload of add_option that takes an rvalue-reference in IP,
- Added an overload of add_option that takes an rvalue-reference in IP,
TCP, DHCP, ICMPv6 and Dot11.

- Added support for GNU/kFreeBSD.
Expand Down Expand Up @@ -724,7 +762,7 @@ pseudo protocol.

##### v0.2 - Sat Oct 20 11:26:40 2012

- Added support for big endian architectures.
- Added support for big endian architectures.

- Simplified several interfaces.

Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ ENDIF(LIBTINS_BUILD_SHARED)

# The version number.
SET(TINS_VERSION_MAJOR 4)
SET(TINS_VERSION_MINOR 3)
SET(TINS_VERSION_MINOR 4)
SET(TINS_VERSION_PATCH 0)
SET(LIBTINS_VERSION "${TINS_VERSION_MAJOR}.${TINS_VERSION_MINOR}")

Expand Down
30 changes: 15 additions & 15 deletions include/tins/dns.h
Original file line number Diff line number Diff line change
Expand Up @@ -652,7 +652,7 @@ class TINS_API DNS : public PDU {
// Getters

/**
* \brief Setter for the id field.
* \brief Getter for the id field.
*
* \return uint16_t containing the value of the id field.
*/
Expand All @@ -661,7 +661,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the query response field.
* \brief Getter for the query response field.
*
* \return QRType containing the value of the query response
* field.
Expand All @@ -671,7 +671,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the opcode field.
* \brief Getter for the opcode field.
*
* \return uint8_t containing the value of the opcode field.
*/
Expand All @@ -680,7 +680,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the authoritative answer field.
* \brief Getter for the authoritative answer field.
*
* \return uint8_t containing the value of the authoritative
* answer field.
Expand All @@ -690,7 +690,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the truncated field.
* \brief Getter for the truncated field.
*
* \return uint8_t containing the value of the truncated field.
*/
Expand All @@ -699,7 +699,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the recursion desired field.
* \brief Getter for the recursion desired field.
*
* \return uint8_t containing the value of the recursion
* desired field.
Expand All @@ -709,7 +709,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the recursion available field.
* \brief Getter for the recursion available field.
*
* \return uint8_t containing the value of the recursion
* available field.
Expand All @@ -719,7 +719,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the z desired field.
* \brief Getter for the z desired field.
*
* \return uint8_t containing the value of the z field.
*/
Expand All @@ -728,7 +728,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the authenticated data field.
* \brief Getter for the authenticated data field.
*
* \return uint8_t containing the value of the authenticated
* data field.
Expand All @@ -738,7 +738,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the checking disabled field.
* \brief Getter for the checking disabled field.
*
* \return uint8_t containing the value of the checking
* disabled field.
Expand All @@ -748,7 +748,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the rcode field.
* \brief Getter for the rcode field.
*
* \return uint8_t containing the value of the rcode field.
*/
Expand All @@ -757,7 +757,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the questions field.
* \brief Getter for the questions field.
*
* \return uint16_t containing the value of the questions field.
*/
Expand All @@ -766,7 +766,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the answers field.
* \brief Getter for the answers field.
*
* \return uint16_t containing the value of the answers field.
*/
Expand All @@ -775,7 +775,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the authority field.
* \brief Getter for the authority field.
*
* \return uint16_t containing the value of the authority field.
*/
Expand All @@ -784,7 +784,7 @@ class TINS_API DNS : public PDU {
}

/**
* \brief Setter for the additional field.
* \brief Getter for the additional field.
*
* \return uint16_t containing the value of the additional field.
*/
Expand Down
Loading