Cygwin and raw sockets - Windows XP with SP2 , Vista and later

Larry Hall (Cygwin) reply-to-list-only-lh@cygwin.com
Wed Jan 6 18:25:00 GMT 2010


On 01/06/2010 12:21 PM, Karthik Balaguru wrote:
> On Wed, Jan 6, 2010 at 10:04 PM, Larry Hall (Cygwin)
> <reply-to-list-only-lh at cygwin>  wrote:
     ^^^^^^^^^^^^^^^^^^^
<http://cygwin.com/acronyms/#PCYMTNQREAIYR>  Don't feed the spammers.

>> On 01/06/2010 09:51 AM, Karthik Balaguru wrote:
>>>
>>> I got the below info from
>>> http://www.cygwin.com/cygwin-ug-net/highlights.html#ov-hi-sockets  -
>>> 'Socket-related calls in Cygwin basically call the functions by the
>>> same name in Winsock, Microsoft's implementation of Berkeley sockets,
>>> but with lots of tweaks.'
>>> But, It does not clearly convey whether cygwin uses Microsoft's
>>> winsock . Does cygwin use winsock ?
>>> If cygwin uses winsock, then i think the raw socket usage restrictions
>>> applied for further releases from 'Windows XP with SP2' is applicable
>>> for cygwin also.:-(
>>
>> Cygwin does not provide its own implementation for sockets.  It uses
>> Winsock V2 so basic restrictions imposed by Winsock will constrain
>> Cygwin as well.
>>
>
> Larry, Thx for the clarification.
>
> But, I came across the below link that conveys that the network
> support in Cygwin is supposed to provide the POSIX API, not the
> Winsock API -
> http://www.cygwin.com/faq/faq.api.html#faq.api.net-functions
> What does the above link refer to ?

Right. It's a layer over Winsock that provides an API such that programs
using the POSIX API will build.  That's largely syntax compatibility.  The
semantics are also there for the most part but are limited by Winsock.

> Interestingly ,the below link conveys that raw sockets is supported
> unofficially ! Strange !
> http://sourceware.org/ml/cygwin/2005-10/msg00753.html
> But, how&  why is it supported unofficially ?

It uses Winsock and is limited by it.

> The below link seems to convey the problems of using the Raw sockets
> with Winsock and it also about the restrictions w.r.t various windows
> releases  -
> http://tangentsoft.net/wskfaq/advanced.html#rawsocket
> So, is the method of usage of winpcap is the only way to use raw
> sockets in cygwin environment ?
>
>  From http://www.winpcap.org/docs/docs_41b5/html/main.html , I find
> that the purpose of WinPcap is to give this kind of access to Win32
> applications that it provides facilities to:
> 1. transmit raw packets 2. capture raw packets and 3. filter the packets
> Any other ideas/ways apart from winpcap to use raw sockets in cygwin
> environment ?

Winpcap isn't a Cygwin package so this would be a Windows native approach.
If you're developing a purely Windows app, then this would be a better way
to go.

-- 
Larry Hall                              http://www.rfk.com
RFK Partners, Inc.                      (508) 893-9779 - RFK Office
216 Dalton Rd.                          (508) 893-9889 - FAX
Holliston, MA 01746

_____________________________________________________________________

A: Yes.
> Q: Are you sure?
>> A: Because it reverses the logical flow of conversation.
>>> Q: Why is top posting annoying in email?

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list