-
Notifications
You must be signed in to change notification settings - Fork 61
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
Apple Network Framework Socket Changes #662
Open
sbSteveK
wants to merge
199
commits into
grand_dispatch_queue
Choose a base branch
from
nw_socket
base: grand_dispatch_queue
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 85 commits
Commits
Show all changes
199 commits
Select commit
Hold shift + click to select a range
14a3386
socket related from network_framework_integration branch
sbSteveK 9715a3e
Merge branch 'grand_dispatch_queue' into nw_socket
sbSteveK b830a86
missed s_socket_listen
sbSteveK cccbda2
move aws_socket_init_poll_based platform not supported function into …
sbSteveK caac9a5
small cleanups/comments
sbSteveK eb59ff1
Merge branch 'grand_dispatch_queue' into nw_socket
sbSteveK 8a794de
nw_socket.c changes
sbSteveK 553d45f
add nw_connection_t to nw_socket
sbSteveK cf610e9
read from socket works
sbSteveK 07bac64
remove prints
sbSteveK dd1fbf2
trivial edits
sbSteveK 2fd514c
check correct vtable func
sbSteveK 2a0da42
clang format
sbSteveK 9cc6620
socket_test add a manual way to set event_loop_style in options
sbSteveK e3281ee
event_loop add undefined event loop style and clang format
sbSteveK 43fd436
clang format
sbSteveK 1c1cd02
event_loop.c clang formatting and configurations
sbSteveK 88f6de3
formatting
sbSteveK cf53cc6
format
sbSteveK a7ab224
macos errors
sbSteveK 62fd06d
fix test
sbSteveK cbb8c42
formatting
sbSteveK 4ce33ee
test fix
sbSteveK 29ab896
prototype void
sbSteveK f9cd5d0
fix style func
sbSteveK 2e55d2d
sprintf -> snprintf
sbSteveK 6938bc3
manual default change for testing
sbSteveK 4658492
Merge branch 'grand_dispatch_queue' into nw_socket
sbSteveK ef8d53f
Merge branch 'grand_dispatch_queue' of https://github.com/awslabs/aws…
xiazhvera 731ba49
setup connection timeout
xiazhvera bac8b07
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 429bf26
remove debug changes
xiazhvera 2282f8f
Branched nw_socket work (#674)
sbSteveK 8e7b351
veriify_peer spelling
sbSteveK 54e58e9
remove redundant secure_transport_ctx
sbSteveK b01b510
channel_args creation simplification
sbSteveK 5b5a953
empty line
sbSteveK b7f13df
clang formatting
sbSteveK b325809
more clang
sbSteveK 86b4343
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 9471d05
fix merge error and socket completion hanlder changes
xiazhvera 789d446
fix cmakefile
xiazhvera 33aa640
Merge branch 'grand_dispatch_queue' into nw_socket
sbSteveK 68fa441
Clean Up Socket Vtable (#678)
xiazhvera a47fd44
remove platform.h
xiazhvera b4cd993
remove platform.h
xiazhvera d071082
[WIP]nw_socket protect socket data with lock (#685)
xiazhvera dd33861
clean up comments
xiazhvera f950453
more read me and clean up
xiazhvera c188594
add logs to track tls_channel_shutdown_with_cache_window_update_after…
xiazhvera 6a1c03a
clang-format
xiazhvera 871ae9b
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera a0be9d2
clean up comments
xiazhvera 32728ba
wait for socket release
xiazhvera 9e8015c
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 3350e6c
clang-format fix
xiazhvera 2592e47
fix cmake changes
xiazhvera f8024d2
kqueue and epoll used the posix socket
xiazhvera 0e24c22
update compile flags...
xiazhvera 40b6b81
update dispatch queue
xiazhvera 81992ba
fix merge change
xiazhvera e89119a
clang-format
xiazhvera 776977e
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 2aafe5f
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera ada3e09
lint
xiazhvera fbe538f
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 86f3b2d
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 72b51a0
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 69c22b4
clean up merge changes
xiazhvera 1b79cbd
fix dispatch queue test flag
xiazhvera e613e5d
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 28b7546
update socket api changes for network framework
xiazhvera 351c682
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera f24d637
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 0d69dd7
add apple socket init
xiazhvera c408e30
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 145e7d7
hide dispatch_queue.h
xiazhvera 3a4eaca
fix merge error
xiazhvera 35934d3
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 11d0f84
rename enum
xiazhvera 8320127
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 652195b
remove warning on nw socket
xiazhvera 1637a88
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 658463a
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera d0dddda
extend the shutdown wait time
xiazhvera 31fd471
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera d784f96
include private socket header
xiazhvera d880859
improve readme
xiazhvera 6b9a05b
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 630d0bb
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 1dc7c7d
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 0b7ba13
update renamed files
xiazhvera e9576c0
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 9b8fb15
[WIP]socket shutdown test
xiazhvera 535d92b
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 95464ab
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera a5094d2
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 4992f4e
Merge branch 'nw_socket' of github.com:awslabs/aws-c-io into nw_socke…
xiazhvera 0588e5c
[WIP] quick test releasing connection in aws_socket_close
xiazhvera c094abf
verify connection is released
xiazhvera 96c3c71
[WIP]test remove shutdown callbacks
xiazhvera d114817
[WIP]remove sleep for tests
xiazhvera 84b3299
[WIP]test socket without channel change
xiazhvera c65daa0
[WIP]partially fixed the race condition
xiazhvera a457935
[wip]fix print and test again
xiazhvera 967379a
validate close state before processing
xiazhvera 0397c14
avoid state update after closing socket.
xiazhvera aabba3c
quick dispatch queue test
xiazhvera 5f95766
fix event loop lock
xiazhvera e9e5ee3
fix compile
xiazhvera cff2fd1
WIP try not null out state_change handler
xiazhvera dbeb628
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 44bb099
Merge branch 'nw_socket' of github.com:awslabs/aws-c-io into nw_socke…
xiazhvera d960c5a
WIP: shutdown callback invoked after aws_socket_clean_up()
xiazhvera a4c1468
revert cancel changes
xiazhvera b98c09a
experiment for close callback in socket handler
xiazhvera 03eb5a1
improve channel handler shutdown...
xiazhvera 7e709cc
setup shutdown callback on socket close
xiazhvera b1fcf8d
fix cmake merge
xiazhvera 9733a56
fix use-after-free print
xiazhvera 9fc5d4a
fix syntax
xiazhvera d0b3143
WIP add lock for socket state
xiazhvera 1f9b1ef
TEST: test non-callback unit tests
xiazhvera c8484df
workaround deadlock...
xiazhvera 1fa11ed
improve event loop validation
xiazhvera b3cc904
add cleanup callback...
xiazhvera 4becc61
update test to avoid deadlock
xiazhvera b79b9a3
fix nw_socket state update workflow
xiazhvera 2c54a76
TEST: clean up socket access
xiazhvera 5e24039
TEST socket wrapped with lock
xiazhvera 19cd3c1
TEST: sleep to wait for event loop cleanup
xiazhvera fe95355
clean up socket and more comments
xiazhvera 73f701a
rename some functions
xiazhvera 7bb9d06
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 96e8643
fix merge conflicts
xiazhvera 7590685
Merge branch 'nw_socket' of github.com:awslabs/aws-c-io into nw_socke…
xiazhvera 7809d15
acquire event loop group for nw_socket
xiazhvera cdfab7e
set CI us DAWS_USE_APPLE_NETWORK_FRAMEWORK
xiazhvera 43ee31f
use shutdown callback in test
xiazhvera c4d7096
add more sleep
xiazhvera 36bf219
add more sleep & improve readable task
xiazhvera 8709bb2
TEST: a quick hacky adjustment for unit tests..
xiazhvera 1f4def1
clean up channel_bootstrap
xiazhvera f641e4e
add shutdown callbacks for windows
xiazhvera e6fcc3c
fix windows&setup listener state task
xiazhvera 439b5ef
revert complete changes
xiazhvera 1dfd6fa
TEST: verify event loop group ref count
xiazhvera 3fc15b3
use event loop group in unit test
xiazhvera 8ed037c
fix missing lock
xiazhvera de14a43
fix condition_var notify
xiazhvera 35f94d9
clang-format
xiazhvera 369eb0b
socket close on peer close
xiazhvera 8c4bdba
NW Socket Shutdown Process Update (#705)
xiazhvera be1c90e
clean up
xiazhvera acd6659
Merge branch 'nw_socket' of github.com:awslabs/aws-c-io into nw_socket
xiazhvera 07c46bd
Checkpoint
79e8b0e
fix channel destory after callback
xiazhvera e258edc
Checkpoint before migrating permanently to socket branch
b5098c0
add listener connect callback
xiazhvera 0ad1471
Shutdown rework initial impl
a25c892
Merge branch 'dq_shutdown' into nw_socket_shutdown2
0c2face
use default socket impl
xiazhvera 6aa2ee9
Updates
469615f
Merge branch 'dq_shutdown' into nw_socket_shutdown2
f661727
Apply updates and remove dispatch queue sleep
a49b771
fix listener test and on peer socket shutdown
xiazhvera 2627d1c
Race condition fix. A connection that completes instantly would caus…
8d66c7f
fix state lock
xiazhvera 7d7fc09
expose aws_socket_get_default_impl_type for test
xiazhvera 9bb0a1e
Merge branch 'nw_socket' into nw_socket_shutdown2
cd41c8f
Doc updates
4c2a4d1
Merge branch 'dq_shutdown' into nw_socket_shutdown2
f81423f
Oops
d49533c
Merge branch 'dq_shutdown' into nw_socket_shutdown2
bd91776
schedule read request even after the last peer closed
xiazhvera e837f77
Merge branch 'nw_socket' of github.com:awslabs/aws-c-io into nw_socke…
xiazhvera 6a95f72
bug fix: wrong lock
xiazhvera 5fe71c6
Merge branch 'nw_socket' of github.com:awslabs/aws-c-io into nw_socke…
xiazhvera 8dc88fd
use is_complete to close the socket
xiazhvera 83981c3
add prints to trace read queue
xiazhvera 7dec84e
try fix processing read data on error
xiazhvera bdcd5ee
WIP: do not cancel connection before write finished
xiazhvera b5a0e85
WIP: do not cancel connection before write finished
xiazhvera 2d312da
WIP DEBUG read operation on closing
xiazhvera 6043ce4
clean up socket
xiazhvera 2f7eec7
update code review
xiazhvera 043b468
Merge branch 'grand_dispatch_queue' of github.com:awslabs/aws-c-io in…
xiazhvera 5ebcf77
Merge branch 'nw_socket_shutdown' of github.com:awslabs/aws-c-io into…
xiazhvera 17d2190
fix merge
xiazhvera 4b1a553
generaize aws_socket_start_accept api
xiazhvera b86e381
improve socket state setup
xiazhvera 098b1bd
improve task mem allocation
xiazhvera c973549
fix socket_cancel and windows
xiazhvera 0368bd9
make sure nw_socket close has an event loop
xiazhvera 304f588
more code review feedback
xiazhvera 214913a
fix windows socket compilation
xiazhvera 031a0e0
fix race condition for releasing socket
xiazhvera fbcafd8
[WIP] Test nw_socket with downstream (#711)
xiazhvera f4e37dc
rename locks...
xiazhvera File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this documentation necessary in the public readme? A giant list of functions feels like a distraction
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would help with anybody who would like to extend the socket implementation. Also, we listed the vtable for other classes as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still think this does not belong here. Are people supposed to keep this in sync with the real definition? Anyone looking at the code can look at the real definition.
As far as I'm concerned, no vtables should be present in a library README.