Hi Arash,
I'm also concerned whether this was the product of copy/paste, which isn't allowed. Was it?
about that copy/paste stuff, well I guess we eventually produce an almost identical header file with one in the SDK I mean everything in the header file is already exposed to the user and "IS" part of API am I not right?
I might agree with you, but lawyers might not. As a result, we don't allow copy/paste code in Wine, even in headers.
just one more question if you don't mind! should I use winsock for socket programming or native linux's? and for some library I may need (regex for example) is there any restriction or convection or something like that or I can use any third party lib?
Native linux sockets are typically used, unless there's good reason for them not to be.
3rd party libraries are harder to work with. You typically have to choose something which you expect will be installed on every common platform, built appropriate configure checks to determine if the library is present at compile time, make your code fail gracefully if not, and dynamically load the library at runtime. Static linking is also viable, if you expect the library is commonly available, and if the license is compatible: LGPL and BSD are, GPL is not, just to give a few examples.
It'd help more if we knew precisely what you're working on, and what you need e.g. regex for. --Juan