晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /usr/share/doc/libxcrypt/ |
Upload File : |
libxcrypt NEWS -- history of user-visible changes. Please send bug reports, questions and suggestions to <https://github.com/besser82/libxcrypt/issues>. Version 4.1.1 * --enable-hashes now supports additional groups of hashing methods: 'freebsd', 'netbsd', 'openbsd', 'osx', and 'solaris', which select the hashes historically supported on those operating systems. * Predictable behavior when arguments to crypt() are NULL or invalid (issue #15). * Hash formats $5, $6, and $md5 once again allow an explicit rounds parameter specifying the default number of rounds (issue #16). * The library no longer uses swapcontext(), for ease of debugging and better compatibility with hardening mechanisms like Intel CET (issue #18). * Can now be built with versions of GNU ld older than 2.26.2. * crypt_gensalt_ra no longer leaks memory on failure. Version 4.1.0 * Fix spelling of SUSE. * Lower the minimum required automake version to 1.14. * Fix build with USE_SWAPCONTEXT turned off. * Extend --enable-weak-hashes configure option to accept optional "glibc" parameter. When specified, it enables only those of weak hashes that are supported by historic versions of the GNU libc. * Fix the leak of obtained random bytes. * Check expected output strings for deterministic methods. * Fix memory leak in crypt_sha1_rn. * Fix read of random bytes out of bounds in gensalt_sha1_rn. * Make it possible to disable individual hashes at configure time. The default is --enable-hashes=all. --enable-hashes=strong is the equivalent of the old --disable-weak-hashes. You could even do --enable-hashes=bcrypt,des to get a binary-compatible libcrypt.so.1 that still supports almost nothing other than bcrypt. * Make salt validation pickier. * Replace crypt-sunmd5.c with BSD-licensed cleanroom reimplementation. * Make crypt_gensalt for $sha1 deterministic. * Fix incorrect output-size computation in crypt_sha1_rn. * Add docs for SHA1, MD5/Sun, NTHASH. * Introduce CRYPT_GENSALT_IMPLEMENTS_* feature test macros. * Install libcrypt.pc symlink along with libxcrypt.pc. * Extend --enable-obsolete-api configure option. Make vendor specific parts of compatibility ABI that are enabled by --enable-obsolete-api option configurable. This allows vendors to enable only those parts of compatibility ABI that are relevant to them. * Extend overall test coverage. Version 4.0.1 * Fixes for GCC v8.x * Add symbol version for riscv64 * Fixed an uninitialized value in test-crypt-badsalt Version 4.0.0 * Full binary backward compatibility with glibc libcrypt; all programs compiled with glibc libcrypt, including vendor-patched versions that include the Openwall extensions, should work with this libcrypt (however, programs compiled against this libcrypt will NOT work with glibc libcrypt). * struct crypt_data is now only 32kB (from 128kB), and divided into a public-API section and a properly opaque internal section. * New feature: supplying a null pointer as the "prefix" argument to any of the crypt_gencrypt functions will cause it to select the best available hash function (in this release, bcrypt in mode 'a'). CAUTION: it must be a null pointer, not an empty string. If you supply an empty string, that selects DES, which is the *worst* available hash function. * New feature: supplying a null pointer as the "rbytes" argument to any of the crypt_gencrypt functions will cause it to acquire random bytes from the operating system. * The legacy functions bigcrypt, fcrypt, encrypt, encrypt_r, setkey, and setkey_r are no longer available for use by new programs. All of these (except fcrypt, which was just another name for crypt) force the use of DES, which is no longer safe for any application. * New configure option --disable-obsolete-api removes the above functions from the library. Since this breaks compatibility with glibc's libcrypt, when this option is used the shared library will be libcrypt.so.2 instead of libcrypt.so.1, and all of the compatibility symbol versions for the crypt* functions will be omitted. This option is the default on all operating systems where there is no GNU C Library to be compatible with. * New configure option --disable-weak-hashes removes all support for DES and MD5 hashes from the library. This option implies --disable-obsolete-api, and will prevent DES and MD5 password hashes from being *verified* -- accounts with such hashes are effectively locked. It is intended for use in high-security new installations. * Sensitive intermediate data is now thoroughly scrubbed from the stack and CPU registers before the crypt functions return to their callers. * UFC-crypt has been replaced with FreeSec; this enables the reduction in size of crypt_data, and adds full support for BSD extended DES hashes. * Extensive code cleanup and portability work. The static library should now be buildable with any C99 compiler, although some features may not be available (notably acquiring random bytes from the operating system and scrubbing the stack). The shared library does still require some GNU extensions for symbol versioning. * The configure options --enable-Wno-cast-align and --enable-bootstrap are no longer necessary and have been removed. * If building from a Git checkout instead of a tarball release, use 'autoreconf -i' to create the configure script; autogen.sh has been removed. * More thoroughly tested. Version 3.1.1 * Add '--enable-Wno-cast-align' to silence 'cast increases required alignment' * Whitespace clean-up Version 3.1.0 * Update upstream-contact * Add './configure --enable-bootstrap' to skip some tests on initial build * Add bootstrap-script for Autotools * Add LICENSE for bcrypt * Update crypt_blowfish to v1.3 * Add '-Wextra' to CFLAGS * Fix warnings generated by gcc 5.1.1 * Update Autotools Version 3.0.4 * Fix warnings generated by gcc 4.6 Version 3.0.3 * Fix memory leak * Fix compiler warnings Version 3.0.2 * Fix generating salts for MD5 Version 3.0.1 * Fix build failures Version 3.0 * Add sha256 and sha512 hashes * Move all hashes into plugins Version 2.4 * Sync with crypt_blowfish 1.0 Version 2.3 * Fix problems with gcc > 4.0 Version 2.2 * Fix realloc call in md5-crypt Version 2.1 * Enable x86.S for i386 again Version 2.0 * Rename all crypt* functions to xcrypt* to avoid clash with normal libcrypt from glibc Version 1.4 * Fix compiling with glibc > 2.3.1 * Sync with crypt_blowfish 0.4.5 Version 1.3 * Sync with current glibc CVS (fix for not correct initialication of internal data structs) Version 1.2 * Fix building with glibc 2.3.x * Add support for HPPA Version 1.1 * merge md5.h with xcrypt.h * Add SHA1 functions and crypt Version 1.0 * First release