SYNCTEST(1)
π SYNCTEST(1) π
okay bestie, welcome to the Cyrus IMAP corner of the internet πΈ this little angel is synctest, and here's the tea: it's literally just imtest(1) wearing a different name tag β no cap, it ships as a hard link to imtest(1) π«Ά
β¨ NAME β¨
synctest β Cyrus IMAP documentation, babes π
It's the Interactive IMAP test program: it tests the replication protocol. And the way it's installed? As a hard link to imtest(1). iconic behavior honestly π
π SYNOPSIS π
imtest [ -t keyfile ] [ -p port ] [ -m mechanism ]
[ -a userid ] [ -u userid ] [ -k num ] [ -l num ]
[ -r realm ] [ -f file ] [ -n num ] [ -s ] [ -q ]
[ -c ] [ -i ] [ -z ] [ -v ] [ -I file ] [ -x file ]
[ -X file ] [ -w passwd ] [ -o option=value ]
[ -H client-ip ] hostname
π¦ DESCRIPTION π¦
so imtest is the utility that lets you authenticate to an IMAP server and then justβ¦ talk to it π¬ interactively. once you're authenticated, you can fire off literally any IMAP command by simply typing it in. yes, ANY. it's giving main character energy.
it handles multiple SASL authentication mechanisms and sorts out encryption layers transparently β like it doesn't even make it weird π
people use this thing constantly for testing how an IMAP server is operating, and ngl, the people out here developing IMAP clients find it super useful too π₯
β¨ OPTIONS β¨
-t keyfile,--keyfile=keyfileβ turns on TLS π.keyfileholds the TLS public and private keys. if you pass""you'll negotiate a TLS encryption layer but won't do TLS authentication β spicy but valid πΆοΈ-p port,--port=portβ which port to connect to πͺ. leave it off and it defaults toimapas defined in/etc/services.-m mechanism,--mechanism=mechanismβ forcesimtestto usemechanismfor authentication. if you don't specify one, it picks the strongest authentication mechanism the server supports πͺ. and if you specifylogin, it uses theLOGINcommand instead ofAUTHENTICATE.-a userid,--authname=useridβ the userid for authentication; defaults to the current user. this is the userid whose password or credentials get presented to the server for verification π-u userid,--username=useridβ the userid for authorization; defaults to the current user. this is the userid whose identity gets assumed after authentication. lowkey a different vibe from-aπ
NOTE: this is only used with SASL mechanisms that allow proxying (e.g. PLAIN).
-k num,--minssf=numβ the minimum protection layer required π‘οΈ-l num,--maxssf=numβ the maximum protection layer to use (0=none;1=integrity; etc). for example, if you're using theGSSAPIauthentication mechanism, specifying0will forceimtestto not use any layer, and specifying1will force it to use the integrity layer. by default the maximum supported protection layer gets used β¨-r realm,--realm=realmβ specify the realm to use. certain authentication mechanisms may require you to specify one π°-f file,--input-filename=fileβ pipesfileinto the connection after authentication π°-n num,--reauth-attempts=numβ number of authentication attempts; default =1. the client will attempt to do SSL/TLS session reuse and/or fast reauth if possible π-s,--require-tlsβ enable SSL over the chosen protocol π-q,--require-compressionβ enable IMAPCOMPRESSion (after authentication) ποΈ-c,--do-challengeβ enable challenge prompt callbacks. this makes the OTP mechanism ask for the one-time password instead of the secret pass-phrase (the library generates the correct response) π²-i,--no-initial-responseβ don't send an initial client response for SASL mechanisms, even if the protocol supports it π βοΈ-I file,--pidfile=fileβ echo the PID of the running process intofile. (this can be useful with-Xπ)-v,--verboseβ verbose mode. it prints out more information than usual π£οΈ-z,--run-stress-testβ timing test β±οΈ-x file,--output-socket=fileβ open the named socket for the interactive portion π-X fileβ like-x, only it closes all file descriptors & daemonizes the process π-w password,--password=passwordβ the password to use (if you don't supply one, we will prompt you) π-o option=value,--sasl-option=option=valueβ set the SASL option tovalueποΈ-H client-ipβ enable the HAProxy protocol and send the specified client IP address in a v1 header. if the address is"unknown", a v1 header withUNKNOWNprotocol gets sent. if the address is"local", a v2 header withLOCALcommand gets sent π
β EXAMPLES β
no examples here bestie, it's empty. the void. we respect it π
π SEE ALSO π
π AUTHOR π
The Cyrus Team π«Ά
π COPYRIGHT π
1993β2026, The Cyrus Team
okay that's the whole page, you ate it up fr fr π and just so you know where this came from: it's Cyrus IMAP version 3.12.3, dated Jul 15, 2026, and the page itself is SYNCTEST(1) π periodt, go forth and test those replicas bestie π
β¨π¦
π¦ where this page comes from
- ubuntu stonking: cyrus-clients 3.12.3-3build1 Β· CMU
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms