# $EPIC: dccctl,v 1.2 2005/03/12 05:23:23 jnelson Exp $
Synopsis:
   $dccctl(REFNUMS)
   $dccctl(TYPEMATCH [pattern])
   $dccctl(DESCMATCH [pattern])
   $dccctl(FILEMATCH [pattern])
   $dccctl(USERMATCH [pattern])
   $dccctl(OTHERMATCH [pattern])
   $dccctl(LOCKED [pattern])
   $dccctl(REFBASE [number])
   $dccctl(HELD)
   $dccctl(UNHELD)
   $dccctl(WRITABLES)
   $dccctl(USERHOSTMATCH [userhost])
   $dccctl(GET <refnum> <item>)
   $dccctl(SET <refnum> <item> <value>)

Technical:
   $dccctl(REFNUMS)
   - Return all integer refnums for all active ignores.
   $dccctl(REFBASE [number])
   - Change the number that new refnums are generated from.
   $dccctl(TYPEMATCH [pattern])
   - Return all dcc refnums whose type matches [pattern]:
	CHAT	SEND	GET	RAW	RAW_LISTEN
   $dccctl(DESCMATCH [pattern])
   - Return all dcc refnums whose "description" matches [pattern] (see below)
   $dccctl(FILEMATCH [pattern])
   - Return all dcc refnums whose "filename" matches [pattern] (see below)
   $dccctl(USERMATCH [pattern])
   - Return all dcc refnums whose "user" matches [pattern] (see below)
   $dccctl(OTHERMATCH [pattern])
   - Return all dcc refnums whose "othername" matches [pattern] (see below)
   $dccctl(USERHOSTMATCH [pattern])
   - Return all dcc refnums whose "userhost" matches [pattern] (see below)

   $dccctl(LOCKED)
   - Return all dcc refnums that are locked (currently being used)
   $dccctl(HELD)
   - Return all dcc refnums that are being held (temporarily turned off)
   $dccctl(UNHELD)
   - Return all dcc refnums that are not being held (active)
   $dccctl(WRITABLES)
   - Return all dcc refnums that could be written to without blocking.

   $dccctl(GET <refnum> <item>)
   $dccctl(SET <refnum> <item> <value>)
   - Retrieve or change an attribute of a DCC.  <Refnum> is a value you
     should have gotten from the REFNUM or REFNUMS operation.
     Currently supported read-write <item>s:
	<item>		<type>		description
	-------------	--------------	--------------------------------------
	refnum		ALL		The <refnum> for the DCC.
	description	DCC CHAT	"chat"
			DCC SEND	Full pathname of file we're sending.
			DCC RAW LISTEN	"raw_listen"
			DCC RAW		remote hostname
			DCC GET		The file being offered.
	filename	DCC GET		The full pathname where we're saving
					the "description"
			OTHERS		NULL
	user		DCC CHAT	NICK from /dcc chat NICK
			DCC SEND	NICK from /dcc send NICK file
			DCC GET		NICK from /dcc get NICK file
			DCC RAW LISTEN	PORT from $listen(PORT)
			DCC RAW		PORT from $connect(host PORT)
			DCC RAW		file descriptor from $listen() conns
	othername	DCC SEND	FILE from "/dcc send nick FILE"
			OTHERS		empty string
	locked		ALL		1 if being used, 0 if not
	held		ALL		1 if inactive, 0 if active.
	offeraddr	ALL		"<host> <port>" peer told us to use.
	quoted		ALL		8-bit-clean connection

     Currently supported read-only <item>s:
	type		ALL		One of CHAT, SEND, GET, RAW, RAW_LISTEN
	filesize	DCC SEND	Size of file being offered
			DCC GET		Size of file being offered
			OTHERS		0
	resumesize	DCC GET		How much of file being offered we 
					already have.
	readbytes	ALL		How many bytes from peer in total
	sentbytes	ALL		How many bytes to peer in total
	server		ALL		Server the DCC handshake came from
	remaddr		ALL		The peer's "<host> <port>"
	locaddr		ALL		Our "<host> <port>"
	starttime	ALL		When dcc was offered or opened.
	lasttime	ALL		Last time data was transferred
	heldtime	ALL		How long the dcc has been held
	holdtime	ALL		When we put the dcc on hold.
	writable	ALL		Whether a write to dcc would block
	flags		ALL		See list:
                1       dcc is DCC CHAT
                2       dcc is DCC SEND
                3       dcc is DCC GET
                4       dcc is DCC RAW
                5       dcc is DCC LISTEN
                16      The dcc is inbound (other connects to us)
                32      The dcc is open and active
                64      The dcc is outbound (connect to other)
                128     The dcc is pending deletion
                256     The dcc is bi-directionally open
                512     The dcc has been rejected by either peer.

See Also:
   dcc(1)

History:
   The $dccctl() function first appeared in EPIC4-1.1.11.
   HELD, HOLDTIME, and FLAGS first appeared in EPIC4-1.1.12.
   OFFERADDR first appeared in EPIC4-1.1.13.
   QUOTED first appeared in EPIC4-1.1.14.
   WRITABLE and WRITABLES first appeared in EPIC4-1.2.7

