YMODEM 受信に失敗する
ブロック0のフォーマットに違いがあるようです。
Linuxのほうはオールゼロですが、FreeBSDでは最後の3バイトに何か値が入っています。
これにより、Tera Termは「ファイルの終わり」が検出できていません。
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 01 10 21 ^^^^^^^^これはなに?
後ろ2つはCRCで、後ろから3つ目と4つ目をパケット数として使う実装があるみたいで、最初のファイル名を渡しているブロック0でも 01 が出ていますね。それが「転送終了」のブロック0でも出力されるのは lrzsz 側のバグではないかと思います。
ただ、ソースは同じなのに Linux のほうでは問題の現象が出ていないんですが、その理由は不明です。lrzsz-0.12.20-19.src.rpm をほどいてパッチも見てみましたが、とくに違う様子はないんですが…
lrzsz 側で構造体が明示的に初期化がされておらず、Linux では 0 で暗黙的に初期化しているかたまたま 0 になっているために問題が起こらないようです。
Tera Term 側の対応は不要で、FreeBSD のほうに send-pr しておきました。 http://www.freebsd.org/cgi/query-pr.cgi?pr=164347
nサーバが Linux の場合には受信に成功するが、FreeBSD の場合は失敗する。
サーバ側はどちらも lrzsz-0.12.20 (パッチレベルは違うかもしれない)で、ファイルはどちらも同一のもの。
各サーバに対しての動作ログを添付しておく。