diff --git a/common/os_calls.c b/common/os_calls.c index 7395a8d9..864d1a9a 100644 --- a/common/os_calls.c +++ b/common/os_calls.c @@ -2678,6 +2678,23 @@ g_executable_exist(const char *exename) return access(exename, R_OK | X_OK) == 0; } +/*****************************************************************************/ +/* returns boolean, non zero if the socket exists */ +int +g_socket_exist(const char *sockname) +{ + struct stat st; + + if (stat(sockname, &st) == 0) + { + return S_ISSOCK(st.st_mode); + } + else + { + return 0; + } +} + /*****************************************************************************/ /* returns boolean */ int diff --git a/common/os_calls.h b/common/os_calls.h index 02bd36fb..15aac65d 100644 --- a/common/os_calls.h +++ b/common/os_calls.h @@ -262,6 +262,7 @@ int g_file_exist(const char *filename); int g_file_readable(const char *filename); int g_directory_exist(const char *dirname); int g_executable_exist(const char *dirname); +int g_socket_exist(const char *dirname); int g_create_dir(const char *dirname); int g_create_path(const char *path); int g_remove_dir(const char *dirname);