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

📄 deny-rsync

📁 Rsync 3.0.5 source code
💻
字号:
#!/bin/bash# Send an error message via the rsync-protocol to a non-daemon client rsync.## Usage:  deny-rsync "message"protocol_version=29exit_code=4 # same as a daemon that refuses an option# e.g. byte_escape 29 => \035function byte_escape {    echo -ne "\\0$(printf "%o" $1)"}msg="$1"if [ "${#msg}" -gt 254 ]; then    # truncate a message that is too long for this naive script to handle    msg="${msg:0:251}..."fimsglen=$(( ${#msg} + 1 )) # add 1 for the newline we append below# Send protocol version.  All numbers are LSB-first 4-byte ints.echo -ne "$(byte_escape $protocol_version)\\000\\000\\000"# Send a zero checksum seed.echo -ne "\\000\\000\\000\\000"# The following is equivalent to rprintf(FERROR_XFER, "%s\n", $msg).# 1. Message header: ((MPLEX_BASE + FERROR_XFER) << 24) + $msglen.echo -ne "$(byte_escape $msglen)\\000\\000\\010"# 2. The actual data.echo -E "$msg"# Make sure the client gets our message, not a write failure.sleep 1exit $exit_code

⌨️ 快捷键说明

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