MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.221.20.252
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/net/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/net/dns.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:10:30 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/net/dns.el
;;; in Emacs version 24.3.1
;;; 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.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


#@50 How many seconds to wait when doing DNS queries.
(defvar dns-timeout 5 (#$ . 550))
#@88 List of DNS servers to query.
If nil, /etc/resolv.conf and nslookup will be consulted.
(defvar dns-servers nil (#$ . 639))
#@40 Names of query types and their values.
(defvar dns-query-types '((A 1) (NS 2) (MD 3) (MF 4) (CNAME 5) (SOA 6) (MB 7) (MG 8) (MR 9) (NULL 10) (WKS 11) (PTR 12) (HINFO 13) (MINFO 14) (MX 15) (TXT 16) (AAAA 28) (SRV 33) (AXFR 252) (MAILB 253) (MAILA 254) (* 255)) (#$ . 768))
#@21 Classes of queries.
(defvar dns-classes '((IN 1) (CS 2) (CH 3) (HS 4)) (#$ . 1047))
(defalias 'dns-write-bytes #[(value &optional length) "\306	\206\307\310\nW\203!\f\311\246B\f\311\245\nT\211\202*\306\211\n\205<\n@\211c\210\nA\211\n\204+\306+\207" [bytes length i --dotimes-limit-- value byte nil 1 0 256 --dolist-tail--] 3])
(defalias 'dns-read-bytes #[(length) "\304	\304\nW\203\305\306_g\"\307u\210\nT\211\202*)\207" [value length i --dotimes-limit-- 0 logior 256 1] 4])
(defalias 'dns-get #[(type spec) "	\236\211A@)\207" [type spec x] 3])
(defalias 'dns-inverse-get #[(value spec) "\304\204*	\203*\n	@\211A@)=\203!	\211@@)\211\202	\211A@\210\202)\207" [found spec value x nil] 3])
(defalias 'dns-write-name #[(name) "\303\304\"\305\211\203\n@\306	G!\210	c\210\nA\211\204*\306\307!\207" [name part --dolist-tail-- split-string "\\." nil dns-write-bytes 0] 4])
(defalias 'dns-read-string-name #[(string buffer) "\303\304!rq\210\305\216\306\307!\210	c\210eb\210\310\n!+\207" [#1=#:temp-buffer string buffer generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) set-buffer-multibyte nil dns-read-name] 2])
(defalias 'dns-read-name #[(&optional buffer) "\305\211\211\n\204Q\306\307!\310\311\312\313\"\"\314U\2039\310\315\"\316_\306\307!\\\212\f\203-\fq\210Tb\210\317\f!*\202\320!\203E\321\211\202`u\210`{	B\202\n;\203j	\204^\n\202p\322\323	\237\324#\324\nQ\202p\322\323	\237\324#+\207" [length name ended offset buffer nil dns-read-bytes 1 logand lsh 3 6 192 63 256 dns-read-name zerop t mapconcat identity "."] 6])
#@110 Write a DNS packet according to SPEC.
If TCP-P, the first two bytes of the package with be the length field.
(defalias 'dns-write #[(spec &optional tcp-p) "\306\307!rq\210\310\216\311\312!\210\313\314\315	\"\316\"\210\313\317\320\314\321	\"\203$\322\202%\323\324\"\320\314\325	\"\302=\2035\323\202V\314\325	\"\326=\203B\322\202V\314\325	\"\327=\203O\316\202V\330\331\314\325	\"\"\332\"\320\314\333	\"\203d\322\202e\323\334\"\320\314\335	\"\203s\322\202t\323\336\"\320\314\337	\"\203\202\322\202\203\323\323\"%!\210\313\314\340	\"\341=\203\226\323\202\330\314\340	\"\342=\203\243\322\202\330\314\340	\"\343=\203\260\316\202\330\314\340	\"\344=\203\275\345\202\330\314\340	\"\346=\203\312\347\202\330\314\340	\"\350=\203\327\351\202\330\323!\210\313\314\352	\"G\316\"\210\313\314\353	\"G\316\"\210\313\314\354	\"G\316\"\210\313\314\355	\"G\316\"\210\314\352	\"\312\211\203?@\356\n@!\210\313\314\357\n\"\206\360\f\236\211A@)\316\"\210\313\314\361\n\"\206-\3628\236\211A@)\316\"\210A\211\204	*\363\3129\211\203\256@9\3149	\"\312:\211\203\246@:\356:@!\210\313\314\357:\"\f\236\211A@)\316\"\210\313\314\361:\"8\236\211A@)\316\"\210\313\314\364:\"\347\"\210\313\314\365:\"G\316\"\210\314\365:\"c\210A\211\204Z*A\211\204I*;\203\275eb\210\313\366 \316\"\210\367 +\207" [#1=#:temp-buffer spec query --dolist-tail-- dns-query-types x generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) set-buffer-multibyte nil dns-write-bytes dns-get id 2 logior lsh response-p 1 0 -7 opcode inverse-query status error "No such opcode: %s" -3 authoritative-p -2 truncated-p -1 recursion-desired-p response-code no-error format-error server-failure name-error 3 not-implemented 4 refused 5 queries answers authorities additionals dns-write-name type A class IN (answers authorities additionals) ttl data buffer-size buffer-string dns-classes slot resource tcp-p] 11 (#$ . 2715)])
(defalias 'dns-read #[(packet) "\306\307!rq\210\310\216\311\312!\210\312\211\211\211\2110c\210eb\210\313\314\315!D
B\314\316!1\317\320\3211\322\316\323\"\"!?\205<\324D
B\3211\322\323\325\"\"\326\327=\203V\330\202i\316=\203a\331\202i\315=\205i\332D
B)\333\320\3211\322\316\315\"\"!?\205~\324D
B\334\320\3211\322\316\315\"\"!?\205\222\324D
B\335\320\3211\322\316\327\"\"!?\205\246\324D
B)\321\314\316!\336\"2\3372\327=\203\277\340\202\3632\316=\203\312\341\202\3632\315=\203\325\342\202\3632\325=\203\340\343\202\3632\344=\203\353\345\202\3632\346=\205\363\347D
B)\314\315!\314\315!\314\315!\314\315!\3123\f\3274545W\203<\350 \351\352\314\315!6\"D\353\352\314\315!7\"DE3B34T\2114\202*\3043D
B)\354\3128\2119\203\2749@8\312\211)38J\3274545W\203\251\350 \351\352\314\315!6\"\211)D\353\352\314\315!7\"D\355\314\344!D\314\315!:\356\357`:u\210`{)\")D\2573B34T\2114\202d*83D
B*9A\2119\204O*
\237.\207" [#1=#:temp-buffer additionals authorities answers queries spec generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) set-buffer-multibyte nil id dns-read-bytes 2 1 response-p zerop logand lsh 7 t 3 opcode 0 query inverse-query status authoritative-p truncated-p recursion-desired-p 15 response-code no-error format-error server-failure name-error 4 not-implemented 5 refused dns-read-name type dns-inverse-get class (answers authorities additionals) ttl data dns-read-type packet byte rc qs i --dotimes-limit-- dns-query-types dns-classes slot --dolist-tail-- length] 9])
(defalias 'dns-read-int32 #[nil "\300\301\302\303!\304_\302\305!\\\"\207" [format "%.0f" dns-read-bytes 1 16777216.0 3] 5])
(defalias 'dns-read-type #[(string type) "p`\306\307!r\nq\210\310\216\311\312!\210c\210eb\210\f\313=\203H\312\314\315,-,-W\203=\316\317!
B,T\211,\202(*\320\321
\237\322#)\202\355\f\323=\203|\312.\324\315,-,-W\203p\316\325!.B.,T\211,\202Y*\320\326.\237\327#)\202\355\f\330=\203\245\331\332	!D\333\332	!D\334\335 D\336\335 D\337\335 D\340\335 D\341\335 D\257\202\355\f\342=\203\303\343\316\325!D\344\316\325!D\345\316\325!D\346\332	!DF\202\355\f\347=\203\323\316\325!\332	!B\202\355\f\350=\204\345\f\351=\204\345\f\352=\203\354\353	\"\202\355+b\210*\207" [point buffer #1=#:temp-buffer string type bytes generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) set-buffer-multibyte nil A 4 0 dns-read-bytes 1 mapconcat number-to-string "." AAAA 8 2 #[(n) "\301\302\"\207" [n format "%x"] 3] ":" SOA mname dns-read-name rname serial dns-read-int32 refresh retry expire minimum SRV priority weight port target MX CNAME NS PTR dns-read-string-name i --dotimes-limit-- hextets] 9])
#@117 Set `dns-servers' to a list of DNS servers or nil if none are found.
Parses "/etc/resolv.conf" or calls "nslookup".
(defalias 'dns-set-servers #[nil "\303\304!\2032\305\306\307!r	q\210\310\216\311\304!\210eb\210\312\313\305\314#\203*\315\316!B\202\237\211+\206Z\317\320!\205Z\306\307!r\nq\210\321\216\322\320\305\314\305\323%\210eb\210\312\324\305\314#\210\315\316!C\211+\207" [dns-servers #1=#:temp-buffer #2=#:temp-buffer file-exists-p "/etc/resolv.conf" nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) insert-file-contents re-search-forward "^nameserver[	 ]+\\([^ 	\n]+\\)" t match-string 1 executable-find "nslookup" ((byte-code "\301!\203\n\302!\210\301\207" [#2# buffer-name kill-buffer] 2)) call-process "localhost" "^Address:[ 	]*\\([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+\\)"] 6 (#$ . 7530)])
(defalias 'dns-read-txt #[(string) "G\301V\203\f\301\302O\207\207" [string 1 nil] 3])
(defalias 'dns-get-txt-answer #[(answers) "\306\307\n\307\211\203Y\f@\211\307\211\203Q\f@\211:\203J
@\310=\2033
\211\fA@)\311=\202J
@\312=\203J\203J	\313
\211\fA@)!P\fA\211\204*\fA\211\204\f*	*\207" [do-next result answers answer --dolist-tail-- elem "" nil type TXT data dns-read-txt x] 4])
(defalias 'dns-make-network-process '(macro . #[(server) "\301\300D\302B\303BB\207" [server let ((coding-system-for-read 'binary) (coding-system-for-write 'binary)) ((if (fboundp 'make-network-process) (make-network-process :name "dns" :coding 'binary :buffer (current-buffer) :host server :service "domain" :type 'datagram) (open-network-stream "dns" (current-buffer) server "domain")))] 3]))
(defvar dns-cache (make-vector 4096 0))
(defalias 'dns-query-cached #[(name &optional type fullp reversep) "\306\307	\n%\310\f
\"\211\f\203\311\f!\203\fJ\2022\312	\n$
\313\f
\"
L\210
)*\207" [name type fullp reversep key dns-cache format "%s:%s:%s:%s" intern-soft boundp dns-query intern sym result] 7])
#@119 Query a DNS server for NAME of TYPE.
If FULLP, return the entire record returned.
If REVERSEP, look up an IP address.
(defalias 'dns-query #[(name &optional type fullp reversep) "\206\306	\204
\307 \210\n\203\310\311\312\313\"\237\314#\315P\316	\204'\317\320!\207\321\322!r\fq\210\323\216\324\325!\210\325\326\327\217\330\331!?\205A\332\333
\334_\335\336!!567\2118\205\370\3378\340\341!D\342\343\300DDCD\344BBB7\"\"\210\345\346 !\203\2275\347V\203\227\3506\351\245!\210\3528\3476#\21056Z5\202p\325\353\354\217\2107\203\261\346 \355Y\203\261eb\210``\355\\|\210\346 \355Y\205\3705\347V\205\370\356\357 !9:\203\3179\202\367\360\3619\"@;\360\300;\"=\205\366\362=\203\361\363\360\3619\"!\202\366\360\364;\")).\207" [type dns-servers reversep name #1=#:temp-buffer dns-timeout A dns-set-servers mapconcat identity split-string "\\." "." ".in-addr.arpa" PTR message "No DNS server configuration found" generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) set-buffer-multibyte nil (byte-code "@\304\211\305\306!\203\306\307\310\311\304\312p\313\314\315\316\317&\f\202%\320\310p\315$+\207" [dns-servers coding-system-for-write coding-system-for-read server binary fboundp make-network-process :name "dns" :coding :buffer :host :service "domain" :type datagram open-network-stream] 13) ((error (byte-code "\301\302@\"\210\303\207" [dns-servers message "dns: Got an error while trying to talk to %s" nil] 3))) fboundp make-network-process t 100 1000 random 65000 process-send-string dns-write id (opcode query) queries ((recursion-desired-p t)) zerop buffer-size 0 sit-for 1000.0 accept-process-output (delete-process process) ((error)) 2 dns-read buffer-string dns-get answers TXT dns-get-txt-answer data times step tcp-p process result fullp answer] 10 (#$ . 9538)])
(provide 'dns)

MMCT - 2023