{"action":"created","issue":{"url":"https://api.github.com/repos/google/gopacket/issues/229","repository_url":"https://api.github.com/repos/google/gopacket","labels_url":"https://api.github.com/repos/google/gopacket/issues/229/labels{/name}","comments_url":"https://api.github.com/repos/google/gopacket/issues/229/comments","events_url":"https://api.github.com/repos/google/gopacket/issues/229/events","html_url":"https://github.com/google/gopacket/issues/229","id":177694000,"number":229,"title":"Ethernet frame padding functionality duplicated?","user":{"login":"paul-pearce","id":2237255,"avatar_url":"https://avatars2.githubusercontent.com/u/2237255?v=3","gravatar_id":"","url":"https://api.github.com/users/paul-pearce","html_url":"https://github.com/paul-pearce","followers_url":"https://api.github.com/users/paul-pearce/followers","following_url":"https://api.github.com/users/paul-pearce/following{/other_user}","gists_url":"https://api.github.com/users/paul-pearce/gists{/gist_id}","starred_url":"https://api.github.com/users/paul-pearce/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paul-pearce/subscriptions","organizations_url":"https://api.github.com/users/paul-pearce/orgs","repos_url":"https://api.github.com/users/paul-pearce/repos","events_url":"https://api.github.com/users/paul-pearce/events{/privacy}","received_events_url":"https://api.github.com/users/paul-pearce/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-09-19T02:21:13Z","updated_at":"2017-04-09T10:56:56Z","closed_at":null,"body":"Hello,\n\ngopacket generates ethernet frames for TCP handshakes that are 6 bytes larger (60 bytes not counting fcs) than what some other libraries and tools will generate (54 bytes not counting fcs). Examples I checked against were dpkt for generation and zmap as a tool. The code to perform this is here:\n\nhttps://github.com/google/gopacket/blob/master/layers/ethernet.go#L94\n\nAs the code comment indicates this is to comply with the minimum ethernet frame size of 60 bytes (not counting fcs). But this seems to be duplicating kernel / driver / NIC hardware functionality that will automatically pad frames to the proper length as needed.\n\nI'm not sure what the right answer here. I just wanted to flag it so you can make the decision on if you want to continue handling this in your code or defer this to the network stack as other libraries and tools appear to have done.\n"},"comment":{"url":"https://api.github.com/repos/google/gopacket/issues/comments/292778643","html_url":"https://github.com/google/gopacket/issues/229#issuecomment-292778643","issue_url":"https://api.github.com/repos/google/gopacket/issues/229","id":292778643,"user":{"login":"lhausermann","id":7381663,"avatar_url":"https://avatars1.githubusercontent.com/u/7381663?v=3","gravatar_id":"","url":"https://api.github.com/users/lhausermann","html_url":"https://github.com/lhausermann","followers_url":"https://api.github.com/users/lhausermann/followers","following_url":"https://api.github.com/users/lhausermann/following{/other_user}","gists_url":"https://api.github.com/users/lhausermann/gists{/gist_id}","starred_url":"https://api.github.com/users/lhausermann/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lhausermann/subscriptions","organizations_url":"https://api.github.com/users/lhausermann/orgs","repos_url":"https://api.github.com/users/lhausermann/repos","events_url":"https://api.github.com/users/lhausermann/events{/privacy}","received_events_url":"https://api.github.com/users/lhausermann/received_events","type":"User","site_admin":false},"created_at":"2017-04-09T10:56:56Z","updated_at":"2017-04-09T10:56:56Z","body":"@gconnell any guidance here ?"}}
{"actor":{"display_login":"lhausermann"}}