termscu(1)
π termscu(1) β the OFFIS DCMTK girlies' guide to yeeting a server
okay so bestie, welcome to termscu π this is a manual page straight out of the OFFIS DCMTK crew, and honestly? it's kind of a menace. it's the DICOM termination SCU β like, an SCU that shows up specifically to end things. main character energy but make it a shutdown π
πΈ SYNOPSIS
termscu [options] peer port
three things: your options, your peer, your port. that's the whole vibe check. β¨
π DESCRIPTION
so termscu implements a Service Class User (SCU) for DCMTK's very own private Shutdown SOP Class. private as in, this isn't some standard-issue thing β it's DCMTK's own little secret handshake π€«
here's the tea: it tries to negotiate this private Shutdown SOP Class with a Service Class Provider (SCP). and then β if the SCP actually implements this feature β the SCP will immediately shutdown after refusing the association. yes fr fr, the refusal is the point. it's giving "you're not on the list, also we're closing" π
the practical upshot? you can use this application to shut down some of DCMTK's server applications. lowkey iconic. π
π¦ PARAMETERS
peerβ hostname of DICOM peerportβ tcp/ip port number of peer
β¨ OPTIONS β¨
general options
-h,--helpβ print this help text and exit--versionβ print version information and exit--argumentsβ print expanded command line arguments-q,--quietβ quiet mode, print no warnings and errors-v,--verboseβ verbose mode, print processing details-d,--debugβ debug mode, print debug information-ll,--log-level[l]evel: string constant β pick your levellfor the logger, from (fatal,error,warn,info,debug,trace)-lc,--log-config[f]ilename: string β use config fileffor the logger
network options
IP protocol version:
-i4,--ipv4β use IPv4 only (default)-i6,--ipv6β use IPv6 only-i0,--ip-autoβ use DNS lookup to determine IP protocol
application entity titles:
-aet,--aetitle[a]etitle: string β set my calling AE title (default:ECHOSCU)-aec,--call[a]etitle: string β set called AE title of peer (default:ANY-SCP)
other network options:
-pdu,--max-pdu[n]umber of bytes: integer (4096..131072) β set max receive pdu tonbytes (default:16384)
π§ NOTES
DICOM Conformance
termscu supports the following SOP Classes as an SCU β yes, there's exactly one, she's an only child π
PrivateShutdownSOPClassβ1.2.276.0.7230010.3.4.1915765545.18030.917282194.0
(that OID is a lot, i know. copy it, don't retype it, bestie π)
π LOGGING
okay so log levels β the amount of logging output from the various command line tools and the underlying libraries can be set by you πΈ by default, only errors and warnings get written to the standard error stream. that's the baseline.
--verbosealso reports informational messages, like processing details. the "what's happening rn" tier π--debuggets you more detail on internal activity, e.g. for debugging purposes. the "why is this happening rn" tier.--log-levellets you select other logging levels.- in
--quietmode only fatal errors are reported. and ngl, in those very severe error events, the application will usually terminate. it's not dramatic, it's just over π
for more details on the different logging levels, see the documentation of module "oflog".
and if you want your logging output written to a file (optionally with logfile rotation), or to syslog on Unix, or to the event log on Windows β that's what --log-config is for β¨ this configuration file also lets you direct only certain messages to a particular output stream, and filter certain messages based on the module or application where they're generated. there's an example configuration file provided in <etcdir>/logger.cfg π
π COMMAND LINE
all the command line tools use this notation for parameters: square brackets enclose optional values (0-1), three trailing dots mean multiple values are allowed (1-n), and a combo of both means 0 to n values. periodt.
command line options are distinguished from parameters by a leading '+' or '-' sign, respectively. usually, order and position of command line options are arbitrary (i.e. they can appear anywhere). however, if options are mutually exclusive, the rightmost appearance is used π this behavior conforms to the standard evaluation rules of common Unix shells. no cap.
also! you can specify one or more command files using an '@' sign as a prefix to the filename (e.g. @command.txt). such a command argument gets replaced by the content of the corresponding text file (multiple whitespaces are treated as a single separator unless they appear between two quotation marks) prior to any further evaluation.
π«Ά heads up: a command file cannot contain another command file. no inception, sorry.
this simple but effective approach lets you summarize common combinations of options/parameters and avoids longish and confusing command lines β an example is provided in file <datadir>/dumppat.txt π
π¦ ENVIRONMENT
termscu will attempt to load DICOM data dictionaries specified in the DCMDICTPATH environment variable. by default β i.e. if DCMDICTPATH isn't set β the file <datadir>/dicom.dic will be loaded, unless the dictionary is built into the application (default for Windows).
the default behavior should be preferred, and DCMDICTPATH only used when alternative data dictionaries are required. DCMDICTPATH has the same format as the Unix shell PATH variable in that a colon (":") separates entries. on Windows systems, a semicolon (";") is used as a separator.
the data dictionary code will attempt to load each file specified in DCMDICTPATH. and it is an error if no data dictionary can be loaded π
π COPYRIGHT
Copyright (C) 2005-2026 by OFFIS e.V., Escherweg 2, 26121 Oldenburg, Germany.
so that's the whole page, bestie π go forth and shut things down responsibly (or don't, but like, know what you're doing first π).
Version 3.7.1 πΈ Sat Oct 17 2026 09:34:01 β mwah, that's the version and date, catch you on the flip side β¨π
π¦ where this page comes from
- arch rolling: dcmtk 3.7.1-1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms