LinuxCommandLibrary

iceauth

Manage X server authorization files

SYNOPSIS

iceauth [-f filename] [-v] [command [arg …]]

PARAMETERS

-f filename
    Read/write authority file filename instead of default ~/.ICEauthority.

-v
    Enable verbose mode, printing actions performed.

add protocol network-id auth-name [hex-data]
    Add entry: network-id is hostname/number; hex-data optional, no 0x prefix.

remove protocol network-id
    Remove all matching entries for protocol and network-id.

list
    Display all entries in readable format (default if no command).

source filename
    Read and execute commands from text file filename.

merge filename
    Add non-duplicate entries from filename.

file filename
    Set authority file for subsequent commands in batch.

DESCRIPTION

iceauth is a command-line utility for maintaining authorization databases used by the Inter-Client Exchange (ICE) protocol in the X Window System.

ICE allows X clients to communicate directly with each other over the network, independent of the X server, enabling features like session management and drag-and-drop. Authentication is required to secure these connections, stored in binary authority files similar to xauth for X11 display access.

Entries in the authority file consist of a protocol name (e.g., ice), network identifier (hostname or decimal number), authorization name (e.g., MIT-MAGIC-COOKIE-1), and optional hexadecimal authorization data.

The default file is ~/.ICEauthority. iceauth supports listing entries, adding/removing records, sourcing from text files, and merging databases. It is essential for multi-user environments, remote sessions, and ICE-aware applications like window managers or desktop environments.

CAVEATS

Authority data must be exact hex bytes; mismatches cause auth failures. File is binary, not human-editable. Run as correct user for ~/.ICEauthority.

NETWORK ID FORMAT

Hostname (e.g., localhost), FQDN, or decimal (e.g., 1230 for TCP port).

EXAMPLE USAGE

iceauth add ice localhost MIT-MAGIC-COOKIE-1 0102030405060708
iceauth list
iceauth -f /tmp/Xauthority remove ice /tmp/.ICE-unix/1230

HISTORY

Introduced in X11R6 (1994) by X Consortium for ICE protocol support, enhancing client interoperability beyond X server mediation.

SEE ALSO

xauth(1), Xsecurity(7), X(7)

Copied to clipboard