;ELC ;;; Compiled ;;; in Emacs version 26.3 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\207" [require cl-lib rudel-state-machine rudel-backend rudel-transport rudel-transport-util rudel-socket rudel-util rudel-xmpp-util rudel-xmpp-state] 2) #@50 Version of the XMPP transport backend for Rudel. (defconst rudel-xmpp-transport-version '(0 2) (#$ . 687)) #@64 Version of the XMPP protocol supported by this implementation. (defconst rudel-xmpp-protocol-version '(1 0) (#$ . 800)) (byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias rudel-xmpp-backend-p eieio-make-class-predicate rudel-xmpp-backend rudel-xmpp-backend--eieio-childp eieio-make-child-predicate rudel-xmpp-backend-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-backend) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-transport-backend) ((capabilities :initform '(connect))) (:documentation "Transport backend works by transporting XMPP messages through\nXMPP connections.")] 6) #@75 Create a new object of class type `rudel-xmpp-backend'. (fn &rest SLOTS) (defalias 'rudel-xmpp-backend #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-backend] 5 (#$ . 1536)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-backend compiler-macro rudel-xmpp-backend--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-backend--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 1853)]) (byte-code "\300\301\302\303\304\305%\210\300\306\302\307\302\310%\210\300\311\302\312\302\313%\210\314\315\316\317!\"\210\314\320\321\317!\"\210\314\322\320\"\210\323\322\324\325#\210\326\317\327\320#\330\317\331\302\332$\207" [cl-generic-define-method initialize-instance nil ((this rudel-xmpp-backend) _slots) t #[771 " \210\301\302#\207" [rudel-xmpp-transport-version eieio-oset :version] 7 "Initialize slots and set version of THIS.\n\n(fn CL--CNM THIS SLOTS)"] rudel-ask-connect-info ((_this rudel-xmpp-backend) &optional info) #[513 "\300\301\"\206\n\302\303!\300\304\"\206\305\306!\300\307\"\206\302\310!\311\301\304\307\257\"\207" [plist-get :host read-string "Server: " :port read-number "Port: " :jid "Jabber ID (JID): " append] 12 "Augment INFO by reading a hostname and a port number.\n\n(fn THIS &optional INFO)"] rudel-make-connection ((this rudel-xmpp-backend) info info-callback &optional progress-callback) #[1027 "C\300\301\302\303\304\305!\306\"\307\310%\311\"\204\211\242\"\240\210\312\242\313\"\312\242\314\"\315\316\317\320\"A\242$\321!\322\323\324#\325\326\327  E%\330!\210\331\332\333\n$\210\266\204\207" [cl-every make-byte-code 257 "\211\300\242\235\207" vconcat vector [] 3 "\n\n(fn KEYWORD)" (:host :jid) plist-get :host :jid rudel-make-connection rudel-backend-get transport tcp rudel-xmpp-make-transport-filter-stack rudel-xmpp-transport format "to %s as %s" :transport :start new rudel-start rudel-state-wait (established) (we-finalize they-finalize disconnected)] 17 "Connect to an XMPP server using the information in INFO.\nINFO has to be a property list containing at least the\nkeys\n+ :host a server name\n+ :port TCP port to connect to\n+ :jid jabber id that should be used\nIf non-nil, PROGRESS-CALLBACK has to be a function which is\ncalled repeatedly to report progress.\n\n(fn THIS INFO INFO-CALLBACK &optional PROGRESS-CALLBACK)"] defalias rudel-xmpp-state-new-p eieio-make-class-predicate rudel-xmpp-state-new rudel-xmpp-state-new--eieio-childp eieio-make-child-predicate rudel-xmpp-state-new-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-new) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "Initial state of new XMPP connections.")] 6) #@77 Create a new object of class type `rudel-xmpp-state-new'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-new #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-new] 5 (#$ . 4401)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-new compiler-macro rudel-xmpp-state-new--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-new--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 4728)]) (byte-code "\300\301\302\303\302\304%\210\305\306\307\310!\"\210\305\311\312\310!\"\210\305\313\311\"\210\314\313\315\316#\210\317\310\320\311#\321\310\322\323\324$\207" [cl-generic-define-method rudel-enter nil ((_this rudel-xmpp-state-new) to jid) #[771 "\300\301EF\207" [negotiate-stream sasl-start] 9 "Switch to \"negotiate-stream\" state.\n\n(fn THIS TO JID)"] defalias rudel-xmpp-state-negotiate-stream-p eieio-make-class-predicate rudel-xmpp-state-negotiate-stream rudel-xmpp-state-negotiate-stream--eieio-childp eieio-make-child-predicate rudel-xmpp-state-negotiate-stream-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-negotiate-stream) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) ((success-state :initarg :success-state :type (or list symbol) :documentation "State to switch to in case of successful\nnegotiation.")) (:documentation "Stream negotiation state.")] 6) #@90 Create a new object of class type `rudel-xmpp-state-negotiate-stream'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-negotiate-stream #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-negotiate-stream] 5 (#$ . 5918)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-negotiate-stream compiler-macro rudel-xmpp-state-negotiate-stream--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-negotiate-stream--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 6310)]) (byte-code "\300\301\302\303\302\304%\210\300\305\302\306\302\307%\210\300\310\302\311\302\312%\210\313\314\315\316!\"\210\313\317\320\316!\"\210\313\321\317\"\210\322\321\323\324#\210\325\316\326\317#\327\316\330\302\331$\207" [cl-generic-define-method rudel-enter nil ((this rudel-xmpp-state-negotiate-stream) to jid success-state) #[1028 "\301\302#\210\303\304\305\"\306\"\210\307\304\305\"\310\"\266\311\312\313\314\315\310\316\317\"\320#%\"\210\321\207" [rudel-xmpp-protocol-version eieio-oset :success-state rudel-set-assembly-function slot-value transport rudel-xmpp-assemble-stream rudel-set-generate-function identity rudel-send format " " "UTF-8" mapconcat mapcar number-to-string "." nil] 14 "Send opening stream tag constructed with TO and JID.\n\n(fn THIS TO JID SUCCESS-STATE)"] rudel-leave ((this rudel-xmpp-state-negotiate-stream)) #[257 "\211\300\301\302\"\303\"\210\304\301\302\"\305\"\207" [rudel-set-assembly-function slot-value transport rudel-xml-assemble-tags rudel-set-generate-function xml->string] 6 "Stop assembling based on opening stream tag.\n\n(fn THIS)"] rudel-accept ((this rudel-xmpp-state-negotiate-stream) xml) #[514 "\300\301\"@\211AA\262\302\303\"<\203\304\302\303\"C\"\202$\302\303\"D\262\207" [xml-get-children stream:features slot-value success-state append] 8 "\n\n(fn THIS XML)"] defalias rudel-xmpp-state-authenticated-p eieio-make-class-predicate rudel-xmpp-state-authenticated rudel-xmpp-state-authenticated--eieio-childp eieio-make-child-predicate rudel-xmpp-state-authenticated-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-authenticated) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "")] 6) #@87 Create a new object of class type `rudel-xmpp-state-authenticated'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-authenticated #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-authenticated] 5 (#$ . 8477)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-authenticated compiler-macro rudel-xmpp-state-authenticated--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-authenticated--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 8854)]) (byte-code "\300\301\302\303\302\304%\210\305\306\307\310!\"\210\305\311\312\310!\"\210\305\313\311\"\210\314\313\315\316#\210\317\310\320\311#\321\310\322\302\323$\207" [cl-generic-define-method rudel-enter nil ((_this rudel-xmpp-state-authenticated)) #[257 "\300\301\302\303F\207" [negotiate-stream "jabber.org" "scymtym" established] 5 "\n\n(fn THIS)"] defalias rudel-xmpp-state-authentication-failed-p eieio-make-class-predicate rudel-xmpp-state-authentication-failed rudel-xmpp-state-authentication-failed--eieio-childp eieio-make-child-predicate rudel-xmpp-state-authentication-failed-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-authentication-failed) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "")] 6) #@95 Create a new object of class type `rudel-xmpp-state-authentication-failed'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-authentication-failed #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-authentication-failed] 5 (#$ . 9902)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-authentication-failed compiler-macro rudel-xmpp-state-authentication-failed--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-authentication-failed--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 10319)]) (byte-code "\300\301\302\303\302\304%\210\305\306\307\310!\"\210\305\311\312\310!\"\210\305\313\311\"\210\314\313\315\316#\210\317\310\320\311#\321\310\322\302\323$\207" [cl-generic-define-method rudel-enter nil ((_this rudel-xmpp-state-authentication-failed)) #[257 "\300\207" [we-finalize] 2 "\n\n(fn THIS)"] defalias rudel-xmpp-state-established-p eieio-make-class-predicate rudel-xmpp-state-established rudel-xmpp-state-established--eieio-childp eieio-make-child-predicate rudel-xmpp-state-established-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-established) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "The XMPP connection enters this state when security\nnegotiation and the negotiation of the actual stream are\ncomplete.")] 6) #@85 Create a new object of class type `rudel-xmpp-state-established'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-established #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-established] 5 (#$ . 11401)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-established compiler-macro rudel-xmpp-state-established--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-established--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 11769)]) (byte-code "\300\301\302\303\302\304%\210\305\306\307\310!\"\210\305\311\312\310!\"\210\305\313\311\"\210\314\313\315\316#\210\317\310\320\311#\321\310\322\302\323$\207" [cl-generic-define-method rudel-accept nil ((this rudel-xmpp-state-established) xml) #[514 "\211\300\301\302\301\"B#\266\303\207" [eieio-oset shelve-buffer slot-value nil] 11 "Store XML in buffer of THIS for later processing.\n\n(fn THIS XML)"] defalias rudel-xmpp-state-idle-p eieio-make-class-predicate rudel-xmpp-state-idle rudel-xmpp-state-idle--eieio-childp eieio-make-child-predicate rudel-xmpp-state-idle-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-idle) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "The XMPP connection enters this state when security\nnegotiation and the negotiation of the actual stream are\ncomplete.")] 6) #@78 Create a new object of class type `rudel-xmpp-state-idle'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-idle #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-idle] 5 (#$ . 12916)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-idle compiler-macro rudel-xmpp-state-idle--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-idle--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 13249)]) (byte-code "\300\301\302\303\302\304%\210\300\305\302\306\302\307%\210\310\311\312\313!\"\210\310\314\315\313!\"\210\310\316\314\"\210\317\316\320\321#\210\322\313\323\314#\324\313\325\302\326$\207" [cl-generic-define-method rudel-enter nil ((this rudel-xmpp-state-idle)) #[257 "\211\300\301\"\203!\300\302\"\211\203 \211@\300\301\"!\210A\266\202\202\f\210\211\303\302\304#\266\304\207" [slot-value filter shelve-buffer eieio-oset nil] 7 "Process data previously shelved in (the transport owning) THIS.\n\n(fn THIS)"] rudel-accept ((this rudel-xmpp-state-idle) xml) #[514 "\300\301\"\203\300\301\"!\210\210\302\207" [slot-value filter nil] 6 "\n\n(fn THIS XML)"] defalias rudel-xmpp-state-we-finalize-p eieio-make-class-predicate rudel-xmpp-state-we-finalize rudel-xmpp-state-we-finalize--eieio-childp eieio-make-child-predicate rudel-xmpp-state-we-finalize-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-we-finalize) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "")] 6) #@85 Create a new object of class type `rudel-xmpp-state-we-finalize'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-we-finalize #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-we-finalize] 5 (#$ . 14562)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-we-finalize compiler-macro rudel-xmpp-state-we-finalize--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-we-finalize--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 14930)]) (byte-code "\300\301\302\303\302\304%\210\305\306\307\310!\"\210\305\311\312\310!\"\210\305\313\311\"\210\314\313\315\316#\210\317\310\320\311#\321\310\322\302\323$\207" [cl-generic-define-method rudel-enter nil ((this rudel-xmpp-state-we-finalize)) #[257 "\211\300\301\302\"\303\"\266\304\305\"\210\306\207" [rudel-set-generate-function slot-value transport identity rudel-send "" disconnected] 6 "\n\n(fn THIS)"] defalias rudel-xmpp-state-they-finalize-p eieio-make-class-predicate rudel-xmpp-state-they-finalize rudel-xmpp-state-they-finalize--eieio-childp eieio-make-child-predicate rudel-xmpp-state-they-finalize-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-they-finalize) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "")] 6) #@87 Create a new object of class type `rudel-xmpp-state-they-finalize'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-they-finalize #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-they-finalize] 5 (#$ . 16015)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-they-finalize compiler-macro rudel-xmpp-state-they-finalize--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-they-finalize--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 16393)]) (byte-code "\300\301\302\303\302\304%\210\305\306\307\310!\"\210\305\311\312\310!\"\210\305\313\311\"\210\314\313\315\316#\210\317\310\320\311#\321\310\322\302\323$\207" [cl-generic-define-method rudel-enter nil ((this rudel-xmpp-state-they-finalize)) #[257 "\300!\210\301\207" [rudel-close nil] 3 "\n\n(fn THIS)"] defalias rudel-xmpp-state-disconnected-p eieio-make-class-predicate rudel-xmpp-state-disconnected rudel-xmpp-state-disconnected--eieio-childp eieio-make-child-predicate rudel-xmpp-state-disconnected-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-state-disconnected) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-xmpp-state) (:documentation "")] 6) #@86 Create a new object of class type `rudel-xmpp-state-disconnected'. (fn &rest SLOTS) (defalias 'rudel-xmpp-state-disconnected #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-state-disconnected] 5 (#$ . 17357)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-state-disconnected compiler-macro rudel-xmpp-state-disconnected--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-state-disconnected--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 17730)]) #@102 Basic states used in an XMPP connection. Authentication mechanisms can add more states to this list. (defvar rudel-xmpp-states '((new . rudel-xmpp-state-new) (negotiate-stream . rudel-xmpp-state-negotiate-stream) (authenticated . rudel-xmpp-state-authenticated) (authentication-failed . rudel-xmpp-state-authentication-failed) (established . rudel-xmpp-state-established) (idle . rudel-xmpp-state-idle) (we-finalize . rudel-xmpp-state-we-finalize) (they-finalize . rudel-xmpp-state-they-finalize) (disconnected . rudel-xmpp-state-disconnected)) (#$ . 17980)) (byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias rudel-xmpp-transport-p eieio-make-class-predicate rudel-xmpp-transport rudel-xmpp-transport--eieio-childp eieio-make-child-predicate rudel-xmpp-transport-child-p make-obsolete "use (cl-typep ... \\='rudel-xmpp-transport) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (rudel-state-machine rudel-transport-filter) ((shelve-buffer :initarg :shelve-buffer :type list :initform nil :documentation "Stores parsed data that cannot be processed in\n the current for processing in a successor state.")) (:documentation "")] 6) #@77 Create a new object of class type `rudel-xmpp-transport'. (fn &rest SLOTS) (defalias 'rudel-xmpp-transport #[128 "\300\301\302#\207" [apply make-instance rudel-xmpp-transport] 5 (#$ . 19248)]) (byte-code "\300\301\302\303#\300\207" [function-put rudel-xmpp-transport compiler-macro rudel-xmpp-transport--anon-cmacro] 4) #@26 (fn WHOLE &rest SLOTS) (defalias 'rudel-xmpp-transport--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 19576)]) (byte-code "\300\301\302\303\304\305%\210\300\306\302\307\304\310%\210\300\311\302\312\302\313%\210\300\314\302\315\304\316%\210\317\320\321!\322\323#\210\324\325!\207" [cl-generic-define-method initialize-instance nil ((this rudel-xmpp-transport) _slots) t #[771 " \210\301\"\210\302\303\304\"\305\306\307\310\311 !\312\"\313\314%\"\207" [rudel-xmpp-states rudel-register-states rudel-set-filter slot-value transport make-byte-code 257 "\301\300\"\207" vconcat vector [rudel-accept] 4 "\n\n(fn DATA)"] 12 "Initialize THIS and register states.\n\n(fn CL--CNM THIS SLOTS)"] rudel-register-state ((this rudel-xmpp-transport) _symbol state) #[1028 "\300\301#\210 \207" [eieio-oset :transport] 8 "Associate THIS to STATE before registering STATE.\n\n(fn CL--CNM THIS SYMBOL STATE)"] rudel-start ((this rudel-xmpp-transport)) #[257 "\300\301\"\207" [rudel-switch idle] 4 "Start processing by THIS.\nStarting the transport can lead to immediate processing of\npreviously shelved data\n\n(fn THIS)"] rudel-close ((this rudel-xmpp-transport)) #[514 "\300\301!\302\235\204\303\304\"\210\305\306\"\210\211!\205 \207" [#[257 "\300!\207" [cl--generic-isnot-nnm-p] 3 "\n\n(fn CL--CNM)"] rudel-current-state (we-finalize they-finalize disconnected) rudel-switch we-finalize rudel-state-wait (disconnected)] 6 "Close the XMPP connection used by THIS.\n\n(fn CL--CNM THIS)"] rudel-add-backend rudel-backend-get-factory transport xmpp rudel-xmpp-backend provide rudel-xmpp] 6)