⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ipmsg.html

📁 linux程序学习里面全是一些关于linux方面的源代码
💻 HTML
📖 第 1 页 / 共 4 页
字号:
&nbsp; &nbsp; IPMSG_GETABSENCEINFO&nbsp; &nbsp;&nbsp;&nbsp;Get absence sentence<br>&nbsp; &nbsp; IPMSG_SENDABSENCEINFO&nbsp; &nbsp;&nbsp;&nbsp;Send absence sentence<br><br>&nbsp; &nbsp; IPMSG_GETPUBKEY&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;RSA Public Key Acquisition<br>&nbsp; &nbsp; IPMSG_ANSPUBKEY&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;RSA Public Key Response<br><br>&nbsp;&nbsp;2) Option flag (High 24 bits from command number 32 bits)<br><br>&nbsp; &nbsp; IPMSG_ABSENCEOPT&nbsp; &nbsp;&nbsp;&nbsp;Absence mode(Member recognition command)<br>&nbsp; &nbsp; IPMSG_SERVEROPT&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Server(Reserved)<br>&nbsp; &nbsp; IPMSG_DIALUPOPT&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Send individual member recognition command<br><br>&nbsp; &nbsp; IPMSG_SENDCHECKOPT&nbsp; &nbsp;&nbsp;&nbsp;Transmission check<br>&nbsp; &nbsp; IPMSG_SECRETOPT&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Sealed message<br>&nbsp; &nbsp; IPMSG_READCHECKOPT&nbsp; &nbsp;&nbsp;&nbsp;Sealed message check(added from ver8 )<br>&nbsp; &nbsp; IPMSG_PASSWORDOPT&nbsp; &nbsp;&nbsp;&nbsp;Lock<br>&nbsp; &nbsp; IPMSG_BROADCASTOPT&nbsp; &nbsp;&nbsp;&nbsp;Broadcast message<br>&nbsp; &nbsp; IPMSG_MULTICASTOPT&nbsp; &nbsp;&nbsp;&nbsp;Multi-cast(Multiple casts selection)<br>&nbsp; &nbsp; IPMSG_NEWMUTIOPT&nbsp; &nbsp;&nbsp;&nbsp;New version multi-cast(reserved)<br>&nbsp; &nbsp; IPMSG_AUTORETOPT&nbsp; &nbsp;&nbsp;&nbsp;Automatic response(Ping-pong protection)<br>&nbsp; &nbsp; IPMSG_NOLOGOPT&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;No log files<br>&nbsp; &nbsp; IPMSG_NOADDLISTOPT&nbsp; &nbsp;&nbsp;&nbsp;Notice to the members outside of BR_ENTRY<br><br>&nbsp; &nbsp; IPMSG_FILEATTACHOPT&nbsp; &nbsp;&nbsp;&nbsp;File attachment<br>&nbsp; &nbsp; IPMSG_ENCRYPTOPT&nbsp; &nbsp;&nbsp;&nbsp;Code<br><br>&nbsp; &nbsp; IPMSG_NOPOPUPOPT&nbsp; &nbsp;&nbsp;&nbsp;(No longer valid)<br>&nbsp; &nbsp; IPMSG_RETRYOPT&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;Re-send flag(Use when acquiring HOSTLIST)<br><br>&nbsp;&nbsp;3) Extended code flag (hex format combination)<br><br>&nbsp; &nbsp; IPMSG_RSA_512<br>&nbsp; &nbsp; IPMSG_RSA_1024<br>&nbsp; &nbsp; IPMSG_RSA_2048<br>&nbsp; &nbsp; IPMSG_RC2_40<br>&nbsp; &nbsp; IPMSG_RC2_128<br>&nbsp; &nbsp; IPMSG_RC2_256<br>&nbsp; &nbsp; IPMSG_BLOWFISH_128<br>&nbsp; &nbsp; IPMSG_BLOWFISH_256<br>&nbsp; &nbsp; IPMSG_SIGN_MD5<br><br>&nbsp;&nbsp;4) Extended files for attachment (fileattr low 8 bits)<br><br>&nbsp; &nbsp; IPMSG_FILE_REGULAR<br>&nbsp; &nbsp; IPMSG_FILE_DIR<br>&nbsp; &nbsp; IPMSG_FILE_RETPARENT<br>&nbsp; &nbsp; IPMSG_FILE_SYMLINK<br>&nbsp; &nbsp; IPMSG_FILE_CDEV<br>&nbsp; &nbsp; IPMSG_FILE_BDEV<br>&nbsp; &nbsp; IPMSG_FILE_FIFO<br>&nbsp; &nbsp; IPMSG_FILE_RESFORK<br><br>&nbsp;&nbsp;5) Attachment file extended attribute(fileattr high 24 bits)<br><br>&nbsp; &nbsp; IPMSG_FILE_RONLYOPT<br>&nbsp; &nbsp; IPMSG_FILE_HIDDENOPT<br>&nbsp; &nbsp; IPMSG_FILE_EXHIDDENOPT<br>&nbsp; &nbsp; IPMSG_FILE_ARCHIVEOPT<br>&nbsp; &nbsp; IPMSG_FILE_SYSTEMOPT<br><br>&nbsp;&nbsp;6) Extended file attribute for attachment file<br><br>&nbsp; &nbsp; IPMSG_FILE_UID<br>&nbsp; &nbsp; IPMSG_FILE_USERNAME<br>&nbsp; &nbsp; IPMSG_FILE_GID<br>&nbsp; &nbsp; IPMSG_FILE_GROUPNAME<br>&nbsp; &nbsp; IPMSG_FILE_PERM<br>&nbsp; &nbsp; IPMSG_FILE_MAJORNO<br>&nbsp; &nbsp; IPMSG_FILE_MINORNO<br>&nbsp; &nbsp; IPMSG_FILE_CTIME<br>&nbsp; &nbsp; IPMSG_FILE_MTIME<br>&nbsp; &nbsp; IPMSG_FILE_ATIME<br>&nbsp; &nbsp; IPMSG_FILE_CREATETIME<br><br>&nbsp; &nbsp; IPMSG_FILE_CREATOR<br>&nbsp; &nbsp; IPMSG_FILE_FILETYPE<br>&nbsp; &nbsp; IPMSG_FILE_FINDERINFO<br><br>&nbsp; &nbsp; IPMSG_FILE_ACL<br>&nbsp; &nbsp; IPMSG_FILE_ALIASFNAME<br>&nbsp; &nbsp; IPMSG_FILE_UNICODEFNAME<br><br><br>2.Command format(Use all character strings)<br><br>&nbsp;&nbsp;1) Command(Format version-1)<br><br>&nbsp; &nbsp; Ver(1) : PacketNo : SenderName : SenderHost : CommandNo : AdditionalSection<br><br>&nbsp;&nbsp;2) An example for Message Send/Receive by using the current command format<br><br>&nbsp; &nbsp; "1:100:shirouzu:jupiter:32:Hello"<br><br><br>3.Command process overview<br><br>&nbsp;&nbsp;1) Member recognition<br><br>&nbsp; &nbsp; An IPMSG_BR_ENTRY command notifies a new entry to the current<br>&nbsp; &nbsp; members at start-up.<br><br>&nbsp; &nbsp; All members add the new member to their list after getting a notification message.<br>&nbsp; &nbsp; An IPMSG_ANSENTRY command sends a message back to the new member.<br><br>&nbsp; &nbsp; The new member gets the current member data by a<br>&nbsp; &nbsp; IPMSG_ANSENTRY command. All members can communicate as long as an<br>&nbsp; &nbsp; IP packet exists.<br><br>&nbsp; &nbsp; An IPMSG_BR_ABSENCE command broadcasts absence mode cancel or<br>&nbsp; &nbsp; nickname change to all members. However, an IPMSG_ANSENTRY command<br>&nbsp; &nbsp; does not send a message back, which is different from an IPMSG_BR_ENTRY<br>&nbsp; &nbsp; command.<br><br>&nbsp; &nbsp; IPMSG_BR_ENTRY, IPMSG_ANSENTRY, and IPMSG_BR_ABSENCE commands<br>&nbsp; &nbsp; use an IPMSG_ABSENCEOPT flag for absence mode. Input a nickname to<br>&nbsp; &nbsp; additional command.<br>&nbsp; &nbsp; Add an IPMSG_DIALUPOPT flag for dial-up users who can't be reached by<br>&nbsp; &nbsp; a broadcast command. A member recognition command needs to be<br>&nbsp; &nbsp; sent individually to the members with this optional flag.<br><br>&nbsp; &nbsp; (Extended group)IPMSG_BR_ENTRY and IPMSG_BR_ABSENCE commands<br>&nbsp; &nbsp; sends a group name by adding the new group name after the current<br>&nbsp; &nbsp; command format character strings (Input '\0' between the current<br>&nbsp; &nbsp; command and extended name).<br><br>&nbsp;&nbsp;2) Send/Receive Message<br>&nbsp; &nbsp; Send Message uses an IPMSG_SENDMSG command that can input a message<br>&nbsp; &nbsp; in the extended area.<br>&nbsp; &nbsp; Receive Message sends back an IPMSG_RECVMSG command only<br>&nbsp; &nbsp; if an IPMSG_SENDCHECKOPT flag is ON. Input the original packet number<br>&nbsp; &nbsp; to the extended area.<br><br>&nbsp; &nbsp; Broadcast Message Send uses an IPMSG_BOADCASTOPT command<br>&nbsp; &nbsp; and an IPMSG_SENDMSG flag should be ON.<br>&nbsp; &nbsp; Auto-Send packet(absence notice) needs to be added to IPMSG_AUTORETOPT<br>&nbsp; &nbsp; for ping-pong protection. If either one or another packet is ON, then<br>&nbsp; &nbsp; confirmation/auto-send packet is not sent back.<br><br>&nbsp; &nbsp; Send Message Sealing needs to be an IPMSG_SECRETOPT packet ON.<br>&nbsp; &nbsp; In this case, Receive Message sends an IPMSG_READMSG command.<br>&nbsp; &nbsp; Input the original packet number to the extended area.<br><br>&nbsp; &nbsp; (Additional IPMSG_NOADDLISTOPT)<br>&nbsp; &nbsp; When receiving an IPMSG_SENDMSG packet from a host that is<br>&nbsp; &nbsp; not on your Send/Receive list, IPMsg will either confirm a host by<br>&nbsp; &nbsp; sending an IPMSG_BR_ENTRY command or add a host name to<br>&nbsp; &nbsp; the Send/Receive list.<br>&nbsp; &nbsp; However, single-shot Message Send/Receive action needs to be avoided.<br>&nbsp; &nbsp; Add an IPMSG_NOADDLISTOPT flag to an IPMSG_SENDMSG command.<br><br>&nbsp; &nbsp; (Additional IPMSG_READCHECKOPT from version-8 )<br>&nbsp; &nbsp; When an IPMSG_READMSG command contains an IPMSG_READCHECKOPT flag,<br>&nbsp; &nbsp; IPMsg process is the same as IPMSG_SENDMSG with an<br>&nbsp; &nbsp; IPMSG_SENDCHECKOPT flag.<br>&nbsp; &nbsp; However, Send Message uses an IPMSG_ANSREADMSG command,<br>&nbsp; &nbsp; not IPMSG_RECVMSG.<br><br>&nbsp;&nbsp;3) Message Send/Receive 亅encrypted extension (Added in the version-9 )<br><br>&nbsp; &nbsp; Use the combination of Public-key(RSA) and common key(RC2/Blowfish).<br>&nbsp; &nbsp; (Encrypted extension area is used in hex format.)<br><br>&nbsp; &nbsp; (Public key acquisition)Send an IPMSG_GETPUBKEY command to Receive<br>&nbsp; &nbsp; Message. Receive Message gets an IPMSG_ANSPUBKEY that<br>&nbsp; &nbsp; means receiving RSA public key from Send Message.<br><br>&nbsp; &nbsp; IPMSG_GETPUBKEY/IPMSG_ANSPUBKEY both require the value which is<br>&nbsp; &nbsp; encryption capability (Exp. IPMSG_RSA_1024) flag uses "OR" at first<br>&nbsp; &nbsp; part of extension<br><br>&nbsp; &nbsp; In addition, In IPMSG_ANSPUBKEY, public key written as EE-NNNNNN<br>&nbsp; &nbsp; E=Exponent丄N=method)devide by ':'. and Input the Fdelimiter '-'<br>&nbsp; &nbsp; between E and N.<br><br>&nbsp; &nbsp; This sequence can be skipped after the 2nd Send/Receive process by<br>&nbsp; &nbsp; memorizing public key and encrypted data.<br>&nbsp; &nbsp;<br>&nbsp; &nbsp; (Encrypted message)After a sender creates a common key that is<br>&nbsp; &nbsp; supported both sender and receiver, a common key can encrypt a message.<br>&nbsp; &nbsp; In addition, a receiver's public key encrypts the common key.<br>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -