Package ch.bailu.gtk.gio
Klasse UnixSocketAddress
java.lang.Object
ch.bailu.gtk.type.Type
ch.bailu.gtk.type.Pointer
ch.bailu.gtk.gobject.Object
ch.bailu.gtk.type.PropertyHolder
ch.bailu.gtk.gio.SocketAddress
ch.bailu.gtk.gio.UnixSocketAddress
- Alle implementierten Schnittstellen:
PointerInterface
Support for UNIX-domain (also known as local) sockets, corresponding to
`struct sockaddr_un`.
UNIX domain sockets are generally visible in the filesystem.
However, some systems support abstract socket names which are not
visible in the filesystem and not affected by the filesystem
permissions, visibility, etc. Currently this is only supported
under Linux. If you attempt to use abstract sockets on other
systems, function calls may return `G_IO_ERROR_NOT_SUPPORTED`
errors. You can use [func@Gio.UnixSocketAddress.abstract_names_supported]
to see if abstract names are supported.
Since GLib 2.72, `GUnixSocketAddress` is available on all platforms. It
requires underlying system support (such as Windows 10 with `AF_UNIX`) at
run time.
Before GLib 2.72, `<gio/gunixsocketaddress.h>` belonged to the UNIX-specific
GIO interfaces, thus you had to use the `gio-unix-2.0.pc` pkg-config file
when using it. This is no longer necessary since GLib 2.72.
`struct sockaddr_un`.
UNIX domain sockets are generally visible in the filesystem.
However, some systems support abstract socket names which are not
visible in the filesystem and not affected by the filesystem
permissions, visibility, etc. Currently this is only supported
under Linux. If you attempt to use abstract sockets on other
systems, function calls may return `G_IO_ERROR_NOT_SUPPORTED`
errors. You can use [func@Gio.UnixSocketAddress.abstract_names_supported]
to see if abstract names are supported.
Since GLib 2.72, `GUnixSocketAddress` is available on all platforms. It
requires underlying system support (such as Windows 10 with `AF_UNIX`) at
run time.
Before GLib 2.72, `<gio/gunixsocketaddress.h>` belonged to the UNIX-specific
GIO interfaces, thus you had to use the `gio-unix-2.0.pc` pkg-config file
when using it. This is no longer necessary since GLib 2.72.
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen ch.bailu.gtk.gobject.Object
Object.OnBindingTransformFunc, Object.OnDestroyNotify, Object.OnDuplicateFunc, Object.OnNotify, Object.OnToggleNotify, Object.OnWeakNotify
-
Feldübersicht
Von Klasse geerbte Felder ch.bailu.gtk.gobject.Object
SIGNAL_ON_NOTIFY
-
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungUnixSocketAddress
(PointerContainer pointer) UnixSocketAddress
(Str path) Creates a new #GUnixSocketAddress for @path.UnixSocketAddress
(String path) Creates a new #GUnixSocketAddress for @path. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungstatic boolean
Checks if abstract UNIX domain socket names are supported.Implements interfaceSocketConnectable
.int
Gets @address's type.static ClassHandler
static int
boolean
Veraltet.static long
static TypeSystem.TypeSize
getPath()
Gets @address's path, or for abstract sockets the "name".long
Gets the length of @address's path.static long
static TypeSystem.TypeSize
static UnixSocketAddress
newAbstractUnixSocketAddress
(Str path, int path_len) Veraltet.static UnixSocketAddress
newAbstractUnixSocketAddress
(String path, int path_len) Veraltet.static UnixSocketAddress
newWithTypeUnixSocketAddress
(Str path, int path_len, int type) Creates a new #GUnixSocketAddress of type @type with name @path.static UnixSocketAddress
newWithTypeUnixSocketAddress
(String path, int path_len, int type) Creates a new #GUnixSocketAddress of type @type with name @path.Von Klasse geerbte Methoden ch.bailu.gtk.gio.SocketAddress
getFamily, getNativeSize, newFromNativeSocketAddress, toNative
Von Klasse geerbte Methoden ch.bailu.gtk.type.PropertyHolder
getBooleanProperty, getIntProperty, getObjectProperty, getStringProperty, getStrProperty, setBooleanProperty, setIntProperty, setObjectProperty, setStringProperty, setStrProperty
Von Klasse geerbte Methoden ch.bailu.gtk.gobject.Object
addToggleRef, bindProperty, bindProperty, bindPropertyFull, bindPropertyFull, bindPropertyWithClosures, bindPropertyWithClosures, compatControl, connect, connect, disconnect, disconnect, dupData, dupData, dupQdata, forceFloating, freezeNotify, get, get, getData, getData, getProperty, getProperty, getQdata, interfaceFindProperty, interfaceInstallProperty, isFloating, notify, notify, notifyByPspec, onNotify, ref, refSink, removeToggleRef, replaceData, replaceData, replaceQdata, runDispose, set, set, setData, setData, setDataFull, setDataFull, setProperty, setProperty, setQdata, setQdataFull, stealData, stealData, stealQdata, takeRef, thawNotify, unref, watchClosure, weakRef, weakUnref
Von Klasse geerbte Methoden ch.bailu.gtk.type.Pointer
asCPointer, cast, connectSignal, disconnectSignals, disconnectSignals, equals, hashCode, throwIfNull, throwNullPointerException, toString, unregisterCallbacks, unregisterCallbacks
Von Klasse geerbte Methoden ch.bailu.gtk.type.Type
asCPointer, asCPointer, asCPointerNotNull, asJnaPointer, asJnaPointer, asPointer, asPointer, cast, cast, throwIfNull
Von Klasse geerbte Methoden java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Von Schnittstelle geerbte Methoden ch.bailu.gtk.type.PointerInterface
asCPointerNotNull, asJnaPointer, asPointer, isNotNull, isNull
-
Konstruktordetails
-
UnixSocketAddress
-
UnixSocketAddress
Creates a new #GUnixSocketAddress for @path.
To create abstract socket addresses, on systems that support that,
use g_unix_socket_address_new_abstract().- Parameter:
path
- the socket path
-
UnixSocketAddress
Creates a new #GUnixSocketAddress for @path.
To create abstract socket addresses, on systems that support that,
use g_unix_socket_address_new_abstract().- Parameter:
path
- the socket path
-
-
Methodendetails
-
getClassHandler
-
newAbstractUnixSocketAddress
@Deprecated public static UnixSocketAddress newAbstractUnixSocketAddress(@Nonnull Str path, int path_len) Veraltet.Creates a new %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED
#GUnixSocketAddress for @path.- Parameter:
path
- the abstract namepath_len
- the length of @path, or -1- Gibt zurück:
- a new #GUnixSocketAddress
-
newAbstractUnixSocketAddress
Veraltet.Creates a new %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED
#GUnixSocketAddress for @path.- Parameter:
path
- the abstract namepath_len
- the length of @path, or -1- Gibt zurück:
- a new #GUnixSocketAddress
-
newWithTypeUnixSocketAddress
public static UnixSocketAddress newWithTypeUnixSocketAddress(@Nonnull Str path, int path_len, int type) Creates a new #GUnixSocketAddress of type @type with name @path.
If @type is %G_UNIX_SOCKET_ADDRESS_PATH, this is equivalent to
calling g_unix_socket_address_new().
If @type is %G_UNIX_SOCKET_ADDRESS_ANONYMOUS, @path and @path_len will be
ignored.
If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT, then @path_len
bytes of @path will be copied to the socket's path, and only those
bytes will be considered part of the name. (If @path_len is -1,
then @path is assumed to be NUL-terminated.) For example, if @path
was "test", then calling g_socket_address_get_native_size() on the
returned socket would return 7 (2 bytes of overhead, 1 byte for the
abstract-socket indicator byte, and 4 bytes for the name "test").
If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED, then
@path_len bytes of @path will be copied to the socket's path, the
rest of the path will be padded with 0 bytes, and the entire
zero-padded buffer will be considered the name. (As above, if
@path_len is -1, then @path is assumed to be NUL-terminated.) In
this case, g_socket_address_get_native_size() will always return
the full size of a `struct sockaddr_un`, although
g_unix_socket_address_get_path_len() will still return just the
length of @path.
%G_UNIX_SOCKET_ADDRESS_ABSTRACT is preferred over
%G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED for new programs. Of course,
when connecting to a server created by another process, you must
use the appropriate type corresponding to how that process created
its listening socket.- Parameter:
path
- the namepath_len
- the length of @path, or -1type
- a #GUnixSocketAddressType- Gibt zurück:
- a new #GUnixSocketAddress
-
newWithTypeUnixSocketAddress
Creates a new #GUnixSocketAddress of type @type with name @path.
If @type is %G_UNIX_SOCKET_ADDRESS_PATH, this is equivalent to
calling g_unix_socket_address_new().
If @type is %G_UNIX_SOCKET_ADDRESS_ANONYMOUS, @path and @path_len will be
ignored.
If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT, then @path_len
bytes of @path will be copied to the socket's path, and only those
bytes will be considered part of the name. (If @path_len is -1,
then @path is assumed to be NUL-terminated.) For example, if @path
was "test", then calling g_socket_address_get_native_size() on the
returned socket would return 7 (2 bytes of overhead, 1 byte for the
abstract-socket indicator byte, and 4 bytes for the name "test").
If @path_type is %G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED, then
@path_len bytes of @path will be copied to the socket's path, the
rest of the path will be padded with 0 bytes, and the entire
zero-padded buffer will be considered the name. (As above, if
@path_len is -1, then @path is assumed to be NUL-terminated.) In
this case, g_socket_address_get_native_size() will always return
the full size of a `struct sockaddr_un`, although
g_unix_socket_address_get_path_len() will still return just the
length of @path.
%G_UNIX_SOCKET_ADDRESS_ABSTRACT is preferred over
%G_UNIX_SOCKET_ADDRESS_ABSTRACT_PADDED for new programs. Of course,
when connecting to a server created by another process, you must
use the appropriate type corresponding to how that process created
its listening socket.- Parameter:
path
- the namepath_len
- the length of @path, or -1type
- a #GUnixSocketAddressType- Gibt zurück:
- a new #GUnixSocketAddress
-
getAddressType
public int getAddressType()Gets @address's type.- Gibt zurück:
- a #GUnixSocketAddressType
-
getIsAbstract
Veraltet.Tests if @address is abstract.- Gibt zurück:
- %TRUE if the address is abstract, %FALSE otherwise
-
getPath
Gets @address's path, or for abstract sockets the "name".
Guaranteed to be zero-terminated, but an abstract socket
may contain embedded zeros, and thus you should use
g_unix_socket_address_get_path_len() to get the true length
of this string.- Gibt zurück:
- the path for @address
-
getPathLen
public long getPathLen()Gets the length of @address's path.
For details, see g_unix_socket_address_get_path().- Gibt zurück:
- the length of the path
-
abstractNamesSupported
public static boolean abstractNamesSupported()Checks if abstract UNIX domain socket names are supported.- Gibt zurück:
- %TRUE if supported, %FALSE otherwise
-
asSocketConnectable
Implements interfaceSocketConnectable
. Call this to get access to interface functions.- Setzt außer Kraft:
asSocketConnectable
in KlasseSocketAddress
- Gibt zurück:
SocketConnectable
-
getTypeID
public static long getTypeID() -
getParentTypeID
public static long getParentTypeID() -
getTypeSize
-
getParentTypeSize
-
getInstanceSize
public static int getInstanceSize()
-