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

Rfc9293 WIP #202

Open
wants to merge 40 commits into
base: master
Choose a base branch
from
Open

Rfc9293 WIP #202

wants to merge 40 commits into from

Conversation

ebrasca
Copy link
Contributor

@ebrasca ebrasca commented Jul 13, 2024

No description provided.

:ack-p t is the default.
fitzsim
fitzsim previously approved these changes Jul 14, 2024
fitzsim

This comment was marked as outdated.

net/tcp.lisp Outdated Show resolved Hide resolved
@fitzsim fitzsim dismissed their stale review July 14, 2024 00:22

Thought this would apply commit-by-commit, not to every single commit in the whole pull request.

net/tcp.lisp Outdated Show resolved Hide resolved
net/tcp.lisp Show resolved Hide resolved
@@ -379,6 +379,7 @@ Set to a value near 2^32 to test SND sequence number wrapping.")
(when (not *netmangler-force-local-retransmit*)
(tcp4-send-packet connection iss (+u32 irs 1) nil :syn-p t))))
((logtest flags +tcp4-flag-rst+)) ; Do nothing for resets addressed to nobody.
((logtest flags +tcp4-flag-fin+)) ; Do nothing for finish since the SEG.SEQ cannot be validated
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have a way to test this?

net/tcp.lisp Show resolved Hide resolved
net/tcp.lisp Show resolved Hide resolved
net/tcp.lisp Show resolved Hide resolved
net/tcp.lisp Show resolved Hide resolved
net/tcp.lisp Outdated Show resolved Hide resolved
@@ -760,8 +760,10 @@ to wrap around logic"
(challenge-ack connection)))
((logtest flags +tcp4-flag-syn+)
(challenge-ack connection))
((logtest flags +tcp4-flag-ack+)
(detach-tcp-connection connection))))
((not (logtest flags +tcp4-flag-ack+))) ; Ignore packets without ACK set.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in the commit message for this one. Not commenting on the logic in the change.

@@ -763,7 +763,11 @@ to wrap around logic"
((not (logtest flags +tcp4-flag-ack+))) ; Ignore packets without ACK set.
(t
(when (eql ack (tcp-connection-snd.nxt connection))
(detach-tcp-connection connection)))))
(detach-tcp-connection connection))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another typo in this commit message.

@@ -709,8 +709,8 @@ to wrap around logic"
(tcp4-send-packet connection ack seq nil :ack-p nil :rst-p t)))
(when (and (logtest flags +tcp4-flag-fin+)
(eql seq (tcp-connection-rcv.nxt connection)))
(setf (tcp-connection-rcv.nxt connection) (+u32 seq 1)
(tcp-connection-state connection) :close-wait)
(setf (tcp-connection-state connection) :close-wait
Copy link
Collaborator

@fitzsim fitzsim Jul 14, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in commit message: "resive".

@@ -130,7 +130,7 @@ Returns NIL if there is no entry currently in the cache, this will trigger a loo
nil)

(defun arp-expiration ()
(let ((time (1+ (get-internal-real-time))))
(let ((time (1+ (get-universal-time))))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it an option to use internal-real-time throughout arp.lisp instead? Is get-universal-time monotonic, or can it change backwards when setting the system date/time (in which case it should not be used for ARP timeouts).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants