August 29, 2010
I have a program which does a bit of scanning through files, and right now I'm running into issues where std.File.isfile() is reporting sockets as files, which is problematic, because sockets cause segfaults when I try to read them.

This is the output of ls -lha on the directory with the socket:

srwxr-xr-x  1 seth seth    0 2010-08-09 20:54 SingletonSocket


So how can I detect if a file is actually a socket?


August 30, 2010
On 29/08/2010 17:30, Seth Hoenig wrote:
> I have a program which does a bit of scanning through files, and right
> now I'm running into issues where std.File.isfile() is reporting sockets
> as files, which is problematic, because sockets cause segfaults when I
> try to read them.
>
> This is the output of ls -lha on the directory with the socket:
>
> srwxr-xr-x  1 seth seth    0 2010-08-09 20:54 SingletonSocket
>
>
> So how can I detect if a file is actually a socket?

Try checking the output of "file" command. It should state if it is a socket or not. Also check the C library for such function and call it from D.