Replies: 10 comments 11 replies
-
The reason CaptureDeviceList was originally a singleton was due to the time it takes to create one. If we can clean that up and make it simpler for the user I'm all for it. Was the idea to replicate statistics mode with a wrapper class or did libpcap add support for it? |
Beta Was this translation helpful? Give feedback.
-
@chmorgan I can't find Should we remove it/ merge the two enumerations? |
Beta Was this translation helpful? Give feedback.
-
@chmorgan instead of using arguments to |
Beta Was this translation helpful? Give feedback.
-
@kayoub5 as a heads up I'm working on the timestamp precision changes here. Wanted to let you know so we don't overlap with any 6.x changes. |
Beta Was this translation helpful? Give feedback.
-
@chmorgan with how the API is taking shape, I don't think we need |
Beta Was this translation helpful? Give feedback.
-
@kayoub5 thoughts on how we should handle the PosixTimeval with the sec/usec sec/nsec changes? The pcap docs recommend just treating the usec field as nsec but in our case we could have a PosixTimevalNS. I'm not sure that's super helpful for the end user though. The other thought I had was that we could switch PosixTimeval to always assume nsec and convert from usec to nsec when we read packets but in that case we'd incur a performance penalty for each packet we read and it probably doesn't make sense to do that. A third approach could be to simply add a nsec field to PosixTimeval and let the user handle which methods/properties they access, basically like the first option above that pcap docs kind of allude to. I think in any case we can't have anything that impacts performance and it should be easy to figure out for the end user. Thoughts? |
Beta Was this translation helpful? Give feedback.
-
@kayoub5 what is the approach to asking a device to configure things it can't? It looks like we have some gaps in our tests today as we don't attempt to test whether invalid options result in errors, for example if you set MinToCopy but that isn't supported we do a configuration error but that defaults to doing nothing. I'm asking because I'm trying to add a test for timestamp support and in some cases, like old winpcap, this isn't supported. If I go the configuration route I'd have to add a default handler but imo a user should get an exception by default if they try to configure something that isn't supported vs. the current behavior of dumping the exception due to lack of error handler. Thoughts? |
Beta Was this translation helpful? Give feedback.
-
@kayoub5 thoughts on a v6 release in the next few weeks? Code coverage is up, we've cleaned up a bunch of the api. Anything else you wanted to get in before the first release? |
Beta Was this translation helpful? Give feedback.
-
Alright, it looks like we've slowed down a bit on cleanups and improvements. Might as well push out v6 unless you've got something pending that should go in first. Thoughts? |
Beta Was this translation helpful? Give feedback.
-
How does that work with nuget versioning? Is there a way to indicate a beta
rev?
…On Sun, Apr 4, 2021 at 5:34 AM Ayoub Kaanich ***@***.***> wrote:
Could you push the new version as beta first?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#201 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAJH4ADOXA3EE7FLN2HY7Y3THAXEBANCNFSM4WGDELEQ>
.
|
Beta Was this translation helpful? Give feedback.
-
@chmorgan Those are points that I would like to propose for v6, since it's going to be a major release:
Remove Npcap & WinPcap namespaces
Port all features to Libpcap name space:
Singleton
CaptureDeviceList
Currently having a singleton as a
CaptureDeviceList
causes problems when application needs to create more than one device.The most common use cases/problems:
CaptureDeviceList
,LibPcapLiveDeviceList
, thus tracking devices that did not get closed is more difficultProposal:
ICaptureDevice
implementIDisposable
, thus code analysis will automatically report devices that get opened without being closed, capture devices can be wrapped in ausing (device) { ... }
block.Beta Was this translation helpful? Give feedback.
All reactions