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

output.tcpcli #47

Open
8 of 9 tasks
jelu opened this issue Apr 12, 2018 · 0 comments
Open
8 of 9 tasks

output.tcpcli #47

jelu opened this issue Apr 12, 2018 · 0 comments

Comments

@jelu
Copy link
Member

jelu commented Apr 12, 2018

  • Create simple DNS TCP client
  • Add connect() and use it in new object if host and port is given
  • Add nonblocking(bool) default true
  • Add wait_on_reply(bool) default false, if true then clear recvbuf before sending
  • Add autoreconnect(bool) default false
  • Add reconnect()
  • Remove checking for DNS queries (or option?)
  • Add recvfrom() and receiver
  • Rewrite _produce() to be able to handle timeouts during length retrieval
jelu added a commit to jelu/dnsjit that referenced this issue May 3, 2018
- `output.tcpcli`: Issue DNS-OARC#47: Add simple TCP client
- `output.udpcli`: `socket()` does not need protocol
@jelu jelu mentioned this issue May 3, 2018
jelu added a commit to jelu/dnsjit that referenced this issue May 4, 2018
- `core.compat`:
  - Add `struct sockaddr_storage`
  - Check that we found all types
- `output.tcpcli`: Issue DNS-OARC#47: Add `connect()` and `nonblocking()`
- `output.udpcli`:
  - Issue DNS-OARC#46: Add `connect()` and `nonblocking()`
  - Use `struct sockaddr_storage`
@jelu jelu mentioned this issue May 4, 2018
jelu added a commit to jelu/dnsjit that referenced this issue May 4, 2018
- `core.compat`:
  - Add `struct sockaddr_storage`
  - Check that we found all types
- `output.tcpcli`: Issue DNS-OARC#47: Add `connect()` and `nonblocking()`
- `output.udpcli`:
  - Issue DNS-OARC#46: Add `connect()` and `nonblocking()`
  - Use `struct sockaddr_storage`
jelu added a commit to jelu/dnsjit that referenced this issue May 4, 2018
- `core.compat`:
  - Add `struct sockaddr_storage`
  - Check that we found all types
- `output.tcpcli`: Issue DNS-OARC#47: Add `connect()` and `nonblocking()`
- `output.udpcli`:
  - Issue DNS-OARC#46: Add `connect()` and `nonblocking()`
  - Use `struct sockaddr_storage`
jelu added a commit to jelu/dnsjit that referenced this issue May 10, 2018
- `README`/`examples/readme.lua`: Update example to use `filter.coro`
- `examples/dumpdns-qr.lua`: Use `core.objects`, `filter.coro` and local variables
- `examples/dumpdns.lua`: Use `core.objects`, `filter.coro` and `core.object.dns:print()`
- `examples/filter_rcode.lua`: Use `core.objects` and `filter.coro`
- `examples/playqr.lua`: Add example of replaying DNS queries and showing the original response vs received response
- `examples/replay.lua`:
  - Add `-t` to use `output.tcpcli`
  - Add `-u` to use `output.udpcli`
  - Use `core.object.dns:print()`
- `core.compat`: Add documentation
- `core.object`:
  - Add `core.object.payload`
  - `core_object_copy()`: Disable copying of `core.object.udp`
- `core.object.dns`:
  - Issue DNS-OARC#39: Parse `core.object.payload` instead of `core.object.udp`
  - Add `rr_reset()` to reset the walking of resource records
  - Add `print()` to print the DNS message
- `core.object.ip`:
  - Remove payload attributes in favor of `core.object.payload`
  - Add `source()` and `destination()` to get a string representation of the IP addresses
- `core.object.ip6`:
  - Remove payload attributes in favor of `core.object.payload`
  - Add `source(pretty)` and `destination(pretty)` to get a string representation of the IP addresses, if `pretty` is true then return easier to read addresses (RFC 5952)
- `core.object.payload`: Add new object to hold the payload of any other object with the option to have padding
- `core.object.tcp`: Remove payload attributes in favor of `core.object.payload`
- `core.object.udp`: Remove payload attributes in favor of `core.object.payload`
- `core.objects`: Add new module to easier `require()` all objects
- `filter.coro`: Handle error on resume
- `filter.layer`: Use `core.object.payload` for all payloads
- `core.output.tcpcli`:
  - Use `core.object.payload` on receive instead of `core.object.tcp` or `core.object.udp`
  - Issue DNS-OARC#47: Add producer to receive responses
  - Use non-blocking mode as default
- `core.output.udpcli`:
  - Use `core.object.payload` on receive instead of `core.object.tcp` or `core.object.udp`
  - Issue DNS-OARC#46: Add producer to receive responses
  - Use non-blocking mode as default
@jelu jelu closed this as completed Jun 27, 2018
@jelu jelu reopened this Jun 29, 2018
jelu added a commit to jelu/dnsjit that referenced this issue Jun 29, 2018
- `examples/*`: Fix handling of previous objects, need to explicitly check for not nil on cdata
- `examples/replay.lua`: Handle timeouts
- `examples/respdiff.lua`: Handle timeouts
- `examples/test_throughput.lua`: Add tests for splitting in Lua
- `core.object.dns`: Add column names in `print()` for resource records
- `core.output.tcpcli`:
  - Issue DNS-OARC#47: Remove DNS query check
  - Add timeout support, see `timeout()`
  - Continue parsing if we received more then needed
  - Add `received()` for the number of payloads received
  - Documentation
- `core.output.udpcli`:
  - Issue DNS-OARC#46: Remove DNS query check
  - Add timeout support, see `timeout()`
  - Continue parsing if we received more then needed
  - Add `received()` for the number of payloads received
  - Documentation
jelu added a commit to jelu/dnsjit that referenced this issue Jun 29, 2018
- `examples/*`: Fix handling of previous objects, need to explicitly check for not nil on cdata
- `examples/replay.lua`: Handle timeouts
- `examples/respdiff.lua`: Handle timeouts
- `examples/test_throughput.lua`: Add tests for splitting in Lua
- `core.object.dns`: Add column names in `print()` for resource records
- `core.output.tcpcli`:
  - Issue DNS-OARC#47: Remove DNS query check
  - Add timeout support, see `timeout()`
  - Continue parsing if we received more then needed
  - Add `received()` for the number of payloads received
  - Documentation
- `core.output.udpcli`:
  - Issue DNS-OARC#46: Remove DNS query check
  - Add timeout support, see `timeout()`
  - Add `received()` for the number of payloads received
  - Documentation
@jelu jelu mentioned this issue Jun 29, 2018
jelu added a commit to jelu/dnsjit that referenced this issue Jun 29, 2018
- `examples/*`: Fix handling of previous objects, need to explicitly check for not nil on cdata
- `examples/replay.lua`: Handle timeouts
- `examples/respdiff.lua`: Handle timeouts
- `examples/test_throughput.lua`: Add tests for splitting in Lua
- `core.object.dns`: Add column names in `print()` for resource records
- `core.output.tcpcli`:
  - Issue DNS-OARC#47: Remove DNS query check
  - Add timeout support, see `timeout()`
  - Continue parsing if we received more then needed
  - Add `received()` for the number of payloads received
  - Documentation
- `core.output.udpcli`:
  - Issue DNS-OARC#46: Remove DNS query check
  - Add timeout support, see `timeout()`
  - Add `received()` for the number of payloads received
  - Documentation
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

No branches or pull requests

1 participant