diff --git a/src/sbbs3/umonitor/spyon.c b/src/sbbs3/umonitor/spyon.c
index abf229ded78fd33aa18f2a63bb836dd5a4df5917..e46a3987235a5bfe62b0943eb7430cf50ef30743 100644
--- a/src/sbbs3/umonitor/spyon.c
+++ b/src/sbbs3/umonitor/spyon.c
@@ -72,7 +72,11 @@ int spyon(char *sockname)  {
 	
 	spy_name.sun_family=AF_UNIX;
 	SAFECOPY(spy_name.sun_path,sockname);
+#ifdef SUN_LEN
 	spy_len=SUN_LEN(&spy_name);
+#else
+	spy_len=sizeof(struct sockaddr_un);
+#endif
 	if(connect(spy_sock,(struct sockaddr *)&spy_name,spy_len))  {
 		return(SPY_NOCONNECT);
 	}