1 /** 2 * D header file for POSIX. 3 * 4 * Copyright: Copyright Sean Kelly 2005 - 2009. 5 * License: $(HTTP www.boost.org/LICENSE_1_0.txt, Boost License 1.0). 6 * Authors: Sean Kelly 7 * Standards: The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition 8 */ 9 10 /* Copyright Sean Kelly 2005 - 2009. 11 * Distributed under the Boost Software License, Version 1.0. 12 * (See accompanying file LICENSE or copy at 13 * http://www.boost.org/LICENSE_1_0.txt) 14 */ 15 module core.sys.posix.sys.un; 16 17 version (OSX) 18 version = Darwin; 19 else version (iOS) 20 version = Darwin; 21 else version (TVOS) 22 version = Darwin; 23 else version (WatchOS) 24 version = Darwin; 25 26 version (Posix): 27 extern(C): 28 @system: 29 30 public import core.sys.posix.sys.socket: sa_family_t; 31 32 // 33 // Required 34 // 35 /* 36 struct sockaddr_un 37 { 38 sa_family_t sun_family; 39 char sa_data[]; 40 } 41 42 sa_family_t // From core.sys.posix.sys.socket 43 */ 44 version(linux)45version (linux) 46 { 47 enum UNIX_PATH_MAX = 108; 48 49 struct sockaddr_un 50 { 51 sa_family_t sun_family; 52 byte[UNIX_PATH_MAX] sun_path; 53 } 54 } 55 else version (Darwin) 56 { 57 struct sockaddr_un 58 { 59 ubyte sun_len; 60 sa_family_t sun_family; 61 byte[104] sun_path; 62 } 63 } 64 else version (FreeBSD) 65 { 66 struct sockaddr_un 67 { 68 ubyte sun_len; 69 sa_family_t sun_family; 70 byte[104] sun_path; 71 } 72 } 73 else version (NetBSD) 74 { 75 struct sockaddr_un 76 { 77 ubyte sun_len; 78 sa_family_t sun_family; 79 byte[104] sun_path; 80 } 81 } 82 else version (OpenBSD) 83 { 84 struct sockaddr_un 85 { 86 ubyte sun_len; 87 sa_family_t sun_family; 88 byte[104] sun_path; 89 } 90 } 91 else version (DragonFlyBSD) 92 { 93 struct sockaddr_un 94 { 95 ubyte sun_len; 96 sa_family_t sun_family; 97 byte[104] sun_path; 98 } 99 } 100 else version (Solaris) 101 { 102 struct sockaddr_un 103 { 104 sa_family_t sun_family; 105 byte[108] sun_path; 106 } 107 } 108