GPG 오류: "do_plaintext: X바이트를 썼지만 Y바이트가 필요합니다."

GPG 오류: "do_plaintext: X바이트를 썼지만 Y바이트가 필요합니다."

gpg다음 구문을 사용할 때 <()문제가 있습니다프로세스 교체.

내 문제에 대한 최소한의 작업 예는 다음과 같습니다.

$ gpg2 -c -o out.gpg <(head -c 73729 /dev/zero)

gpg: do_plaintext(): wrote 65537 bytes but expected 65536 bytes

입력 파일이 바이트보다 작으면 73729오류가 발생하지 않습니다 . (내 친구의 컴퓨터에서 최대 파일 크기는 65535바이트 단위입니다. 73729가 65535 + 2^13에 매우 가깝다는 것을 알았는데 이것이 관련이 있는지 확실하지 않습니다.)

그러나 파이프 기반 프로세스 교체를 사용하면 작동합니다.

$ head -c 73729 /dev/zero | gpg2 -c -o out.gpg   

이것은 버그입니까, 아니면 내 구문에 문제가 있습니까 <()?

이것은 GitHub의 GPG 소스 코드에 있는 파일입니다.문제가 발생했습니다.

이것은 내 GPG 버전입니다.

$ gpg --version
gpg (GnuPG) 2.2.5
libgcrypt 1.8.2
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Home: /Users/XXXXXXXX/.gnupg
Supported algorithms:
Pubkey: RSA, ELG, DSA, ECDH, ECDSA, EDDSA
Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH,
        CAMELLIA128, CAMELLIA192, CAMELLIA256
Hash: SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
Compression: Uncompressed, ZIP, ZLIB, BZIP2

당신의 도움을 주셔서 감사합니다!

관련 정보