## [Bytix Archaea tools 変更点] ###################################################### #14563: HpFP POSIX共有メモリモードのFD消費削減 ---------------------------------------------------------------------------- ■概要 hcpdコマンドのHpFP通信機能においてPOSIX共有メモリ保護モードが有効な場合に消費されるファイルディスクリプタを削減しました。 関連設定項目: HPFPProtectedSharedMemory yes|no[yes] session|connection[session] 旧メモリ保護モードは、以下の設定です。 HPFPProtectedSharedMemory yes connection ---------------------------------------------------------------------------- #13790: AlmaLinux 10 対応 ---------------------------------------------------------------------------- #14383: Ubuntu 26.04 対応 ---------------------------------------------------------------------------- #14385: openSUSE 16.0対応 ---------------------------------------------------------------------------- #14384: openSUSE 15.6対応 ---------------------------------------------------------------------------- #14587: hcpdコマンド ログ改訂 ---------------------------------------------------------------------------- ■概要 hcpdコマンドのログ(/var/log/hcpd.log)について以下の様に出力を変更しました。 ・子プロセスの失敗時の記録にユーザIDとプロセスID追加 2026/08/24 20:12:27: proc-3798 : Child process terminated with an unsuccessful status (90, user01, pid=4226). ・子プロセスの成功時もログに記録するように変更 2026/08/24 20:12:27: proc-3798 : Child process terminated successfully (user01, pid=4226). ・セカンダリ接続の処理結果のログを編成  子プロセスへの紐づけ成功と失敗(理由付き)を接続単位で記録するように変更、整理 proc-30812 : socket-34 : TCP worker bound to a user session (pid=30871). proc-30812 : socket-34 : TCP worker not bound to any user session (not found). proc-30812 : socket-34 : TCP worker not bound to any user session (canceled, pid=30871). ・スレッド情報を削除  ※クライアント含め変更 旧 : 2026/08/19 10:55:04 00007f51d4fa1640: proc-29614, thread-139989442238016 : socket-34 : TCP socket accepted 新 : 2026/08/24 20:12:26: proc-3798 : socket-31 : TCP socket accepted ・syslog 冗長なプロセスID削除、スレッドID削除 旧 : Aug 19 10:55:04 localhost hcpd29614: proc-29614, thread-139989442238016 : socket-34 : TCP socket accepted 新 : Aug 24 20:12:27 localhost hcpd3798: socket-35 : TCP socket accepted ・hcpd_session.cpp内のエラーログをstderrからアプリログに変更  hcpd.logに記録するため ---------------------------------------------------------------------------- #13681: hcpdコマンド ListenServiceBonding WSS対応 ---------------------------------------------------------------------------- ■概要 hcpdコマンドのサービスボンディング機能が、WSSプロトコルに対応しました。 WSS同士のサービスを束ねることが可能です。 他のプロトコル(TCP,HpFP,WS)のサービスと束ねることはできません。 ---------------------------------------------------------------------------- #12973: アプリケーション実行記録(.hcp.out) タイムスタンプ列追加 ---------------------------------------------------------------------------- ■概要 アプリケーションの実行記録(.hcp.out)に日時を記録する設定を追加しました。 クライアント設定項目: HcpOutTimestamp yes|no [no] ---------------------------------------------------------------------------- #14582: hcp/hsyncコマンド 'No space left on device'(ENOSPC)などを書き込みエラー(A005)から分離し、エラーメッセージを表示するように変更 ---------------------------------------------------------------------------- ■概要 hcpまたはhsyncコマンドにおいて書込みの際に次のエラーが発生した場合に、一般的な書込みエラーの理由コード(A005)と区別するように変更しました。 (Linux/macOS環境が対象) ・ENOSPC 'No space left on device'  理由コード BFFD ・EDQUOT 'Disk quota exceeded'  理由コード BFF1 ・EFBIG 'File too large'  理由コード A01B ・EPERM 'Operation not permitted'  理由コード B802 コマンド停止時に、以下のようにメッセージが表示されます。 $ hcp ... hcp: No space left on device $ cat .hcp.out SRC test.txt DST 127.0.0.1:874:test.txt NG BFFD FT 00000001 test.txt EXIT 90 REASON BFFD ---------------------------------------------------------------------------- #14410: hcp/hsyncコマンド ファイル属性更新タイミングの調整 ---------------------------------------------------------------------------- ■概要 hcpコマンド -pオプションによる転送先のファイル属性の更新を、 ファイル書き込み終了(閉鎖)前のタイミングで実行するように変更しました。 ---------------------------------------------------------------------------- #14418: hcpコマンド -pオプション ヘルプ記載改訂 ---------------------------------------------------------------------------- ■概要 転送元ファイルのファイル属性のうち更新日時、所有者、グループの反映も 行われることが判るように記述を変更しました。 ---------------------------------------------------------------------------- #14555: クライアントコマンド設定 Include 設定ファイルのディレクトリにhcp-common.confが存在する場合に暗黙的にロードするように変更 ---------------------------------------------------------------------------- ■概要 クライアント実行時に、設定ファイルを設置したディレクトリにhcp-common.confが存在する場合に、 暗黙的に同ファイルを設定としてロードする機能を追加しました。 ※設定ファイルに'Include'設定項目を記述した場合は、暗黙的なロードは行いません。 ---------------------------------------------------------------------------- #14492: hcpd download manager ダウンロードセッション情報の応答に未登録でもgidsフィールドを返すように変更 ---------------------------------------------------------------------------- #14541: hcpd download manager セッション新規作成・更新・一覧取得 expire/expires_after/expires_before ドキュメント改訂 ---------------------------------------------------------------------------- #14396: hcpd/hcpd_winservコマンド パケット書き換えが行われると待機サービスがクラッシュしてしまうことがある ---------------------------------------------------------------------------- ■現象 アプリケーションプロトコルのパケットデータが改ざんされて到着した場合に、 待機サービス(hcpdまたはhcpd_winserv)がクラッシュしてしまう場合があります。 ■再現条件 ・hcpd/hcpd_winservコマンド ・接続セキュリティ(ServerCertSecurity)が有効であること ・アプリケーションパケットの所定位置のデータが特定値に改ざんされること ■回避策 なし ---------------------------------------------------------------------------- #14392: hcpdコマンド パケット解析時にエラーが発生して中断すると待機サービス上でメモリリークが発生してしまう ---------------------------------------------------------------------------- ■概要 アプリケーションプロトコルのパケットに異常が発見される、または解析中にI/Oエラーが発生など エラーが発生すると、待機サービス(hcpd)状で発生していたメモリリークを修正しました。 ---------------------------------------------------------------------------- #14673:hcpd/hcpd_winservコマンド MaxBufferSize 16GBなどのサイズを指定して小さいファイルを多数送信すると最後数個のファイルが転送失敗してまうことがある ---------------------------------------------------------------------------- #14559: hcpd 特権分離 プロセス分離が失敗した場合にディスクリプタ消費が増加してしまう ---------------------------------------------------------------------------- #14560: hcpd 特権分離 プロセス分離が失敗した場合に不要なプロセス待機を行ってしまう(潜在的不具合修正) ---------------------------------------------------------------------------- #14581: クライアントコマンド hcpdのDocPoint設定で接続が拒否された場合にエラーメッセージがコンソールに表示されずに終了してしまう ---------------------------------------------------------------------------- ■現象 サーバ(hcpdまたはhcpd_winserv)のDocPoint設定により接続が拒否された場合に、 クライアントのコンソールでエラーメッセージが表示されずに終了してしまう。 (UI表示上エラーであることが判らない) ■再現条件 ・クライアントコマンド ・サーバのDocPoint設定で許可されていない領域にアクセスすること ■回避策 なし ■補足 本件に該当する理由コード FILE_OUT_OF_DOC_ROOT (AFFE) を含め、 以下の理由コードを対象にメッセージを表示して終了するように変更しました。 (類似点修正) FILE_ACCESS_DENIED "Permission denied", "Access denied" (Windows) DIGEST_ERROR "Digest mismatch or calculation failed" WRITE_ERROR "cannot write file" CREATE_DIR_ERROR "cannot create directory" CREATE_LINK_ERROR "cannot create link" READ_ERROR "cannot read file" RENAME_ERROR "cannot rename file" DELETE_ERROR "cannot delete file" MODIFY_ERROR "cannot modify file attribute" DEST_IS_NOT_DIR "Destination is not directory" OMIT_DIR "Directories omitted" TMP_FILE_SETUP_ERROR "cannot allocate temporary file" TMP_FILE_FIX_ERROR "cannot finalize temporary file" CREATE_DEVICE_ERROR "cannot create device" CREATE_SPECIAL_ERROR "cannot create special file" CANNOT_DEL_NON_EMPTY "cannot delete non-empty directory" DIRECT_IO_EINVAL "Direct I/O invalid argument" FILE_OUT_OF_DOC_ROOT "Permission denied out of server document area", "Access denied out of server document area" (Windows) FILE_SIZE_OVER_LIMIT "Over file size limitation" FILE_ENTRY_NOT_FOUND "No such file to process" FILE_ENTRY_ERROR "cannot process file" FIND_FILE_ERROR "cannot search for file to process" APP_NOT_SUPPORTED "Application not supported by server" UNEXP_TERM "Unexpectedly terminated" OP_NOT_PERMITTED "Operation not permitted" RL_ABORT "Aborted by resource limit" SETUP_FAILURE "Application setup failed" DISK_FULL "No space left on device" PROTO_ERROR "Application protocol failure" INTERNAL_ERROR "Unexplained internal failure" GENERAL_ERROR "Unexplained failure" ---------------------------------------------------------------------------- #14593: クライアントコマンド コマンドの終了間際にクラッシュが発生してしまう (潜在的不具合修正) ---------------------------------------------------------------------------- ■現象 クライアントコマンドをCentOS7環境で実行した際に、 終了時にクラッシュが発生してしまいます。 (アプリケーションの実行は完了します) ■再現条件 ・CentOS7 ・クライアントコマンド ■回避策 なし ■補足 CentOS7の環境で確認されました。 他の環境では未確認ですが、発生する可能性はあります。 ---------------------------------------------------------------------------- #14537: アプリ統計のプロトコルバージョンに古いバージョン('3.1')が記録されてしまう ---------------------------------------------------------------------------- ■概要 バージョン1.6のサーバに接続した場合に、アプリケーション統計にプロトコルバージョンが 古いバージョン('3.1')で記録されてしまう問題を修正しました。 ('4.0'で記録されます) ---------------------------------------------------------------------------- #13723: known_hosts 行頭にコメント(#)が存在するとスキップされずにエラーで中断してしまうことがある ---------------------------------------------------------------------------- #14416: hcp/hsyncコマンド 非同期I/O ディレクトリ転送またはファイル操作を含む転送を行うとアイドル時にクラッシュしてしまうことがある ---------------------------------------------------------------------------- ■現象 hcpまたはhsyncコマンドにおいて、非同期I/Oオプションを使用して、 ディレクトリを転送、またはファイル操作(シンボリック作成など)を含む 転送を行うと、ユーザセッションがクラッシュしてしまうことがあります。 ■再現条件 ・hcp/hsyncコマンド ・非同期I/Oを使用すること ・ディレクトリまたはファイル操作を含む転送を行うこと ■回避策 なし ---------------------------------------------------------------------------- #14460: hcp/hsyncコマンド ダイジェスト計算 XXH3 初期化処理修正 ---------------------------------------------------------------------------- #14454: hcpd download manager ログイン機能 トークン発行直後にログインセッション情報をクリアするように訂正 ---------------------------------------------------------------------------- #14458: hcpd download manager ダウンロードセッションの一覧取得の応答の不要な配列ネストを訂正 ---------------------------------------------------------------------------- #14464: hcpd download manager ダウンロードセッション更新APIでpathsおよびgidsが更新されない ---------------------------------------------------------------------------- #14487: hcpd download manager 認証失敗した場合に空のJsonペイロードを応答してしまう ---------------------------------------------------------------------------- #14489: hcpd download manager 新規作成 必須パラメータ paths を省略しても登録できてしまう (潜在的不具合修正) ---------------------------------------------------------------------------- #14540: hcpd download manager 一覧取得 データへのアクセス時にエラー発生した場合に応答ペイロードが空になってしまう ---------------------------------------------------------------------------- #14542: hcpd download manager セッション新規作成・更新 umask_file/umask_dir '0009'(範囲外)を入力したときに成功してしまう ---------------------------------------------------------------------------- #14543: hcpd download manager セッション新規作成・更新 umask_dir エラーメッセージ訂正 ---------------------------------------------------------------------------- #14573: hcpd download manager セッション更新 expire省略時にexpire_timeが更新されてしまう ---------------------------------------------------------------------------- #14574: hcpd download manager 応答形成時に対象データが見つからない場合などに内部エラーをそのままを応答してしまう (潜在的不具合修正) ---------------------------------------------------------------------------- #14575: hcpd download manager 一覧取得 gid/path検索 セッションに指定したGID(またはパス)を検索条件に指定しても取得できないことがある ---------------------------------------------------------------------------- #14576: hcpd download manager 一覧取得 expries_after/expires_before を指定しても期待通りに取得できない ---------------------------------------------------------------------------- #14411: ログ訂正 ----------------------------------------------------------------------------