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

📄 perl570delta.pod

📁 视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.
💻 POD
📖 第 1 页 / 共 2 页
字号:
=head1 NAMEperl570delta - what's new for perl v5.7.0=head1 DESCRIPTIONThis document describes differences between the 5.6.0 release andthe 5.7.0 release.=head1 Security Vulnerability ClosedA potential security vulnerability in the optional suidperl componentof Perl has been identified.  suidperl is neither built nor installedby default.  As of September the 2nd, 2000, the only known vulnerableplatform is Linux, most likely all Linux distributions.  CERT andvarious vendors have been alerted about the vulnerability.The problem was caused by Perl trying to report a suspected securityexploit attempt using an external program, /bin/mail.  On Linuxplatforms the /bin/mail program had an undocumented feature whichwhen combined with suidperl gave access to a root shell, resulting ina serious compromise instead of reporting the exploit attempt.  If youdon't have /bin/mail, or if you have 'safe setuid scripts', or ifsuidperl is not installed, you are safe.The exploit attempt reporting feature has been completely removed fromthe Perl 5.7.0 release, so that particular vulnerability isn't thereanymore.  However, further security vulnerabilities are,unfortunately, always possible.  The suidperl code is being reviewedand if deemed too risky to continue to be supported, it may becompletely removed from future releases.  In any case, suidperl shouldonly be used by security experts who know exactly what they are doingand why they are using suidperl instead of some other solution such assudo ( see http://www.courtesan.com/sudo/ ).=head1 Incompatible Changes=over 4=item *Arrays now always interpolate into double-quoted strings:constructs like "foo@bar" now always assume C<@bar> is an array,whether or not the compiler has seen use of C<@bar>.=item *The semantics of bless(REF, REF) were unclear and until someone provesit to make some sense, it is forbidden.=item *A reference to a reference now stringify as "REF(0x81485ec)" insteadof "SCALAR(0x81485ec)" in order to be more consistent with the returnvalue of ref().=item *The very dusty examples in the eg/ directory have been removed.Suggestions for new shiny examples welcome but the main issue is thatthe examples need to be documented, tested and (most importantly)maintained.=item *The obsolete chat2 library that should never have been allowedto escape the laboratory has been decommissioned.=item *The unimplemented POSIX regex features [[.cc.]] and [[=c=]] are stillrecognised but now cause fatal errors.  The previous behaviour ofignoring them by default and warning if requested was unacceptablesince it, in a way, falsely promised that the features could be used.=item *The (bogus) escape sequences \8 and \9 now give an optional warning("Unrecognized escape passed through").  There is no need to \-escapeany C<\w> character.=item *lstat(FILEHANDLE) now gives a warning because the operation makes no sense.In future releases this may become a fatal error.=item *The long deprecated uppercase aliases for the string comparisonoperators (EQ, NE, LT, LE, GE, GT) have now been removed.=item *The regular expression captured submatches ($1, $2, ...) are nowmore consistently unset if the match fails, instead of leaving falsedata lying around in them.=item *The tr///C and tr///U features have been removed and will not return;the interface was a mistake.  Sorry about that.  For similarfunctionality, see pack('U0', ...) and pack('C0', ...).=back=head1 Core Enhancements=over 4=item *C<perl -d:Module=arg,arg,arg> now works (previously one couldn't passin multiple arguments.)=item *my __PACKAGE__ $obj now works.=item *C<no Module;> now works even if there is no "sub unimport" in the Module.=item *The numerical comparison operators return C<undef> if either operandis a NaN.  Previously the behaviour was unspecified.=item *C<pack('U0a*', ...)> can now be used to force a string to UTF-8.=item *prototype(\&) is now available.=item *There is now an UNTIE method.=back=head1 Modules and Pragmata=head2 New Modules=over 4=item *File::Temp allows one to create temporary files and directories in aneasy, portable, and secure way.=item *Storable gives persistence to Perl data structures by allowing thestorage and retrieval of Perl data to and from files in a fast andcompact binary format.=back=head2 Updated And Improved Modules and Pragmata=over 4=item *The following independently supported modules have been updated tonewer versions from CPAN: CGI, CPAN, DB_File, File::Spec, Getopt::Long,the podlators bundle, Pod::LaTeX, Pod::Parser, Term::ANSIColor, Test.=item *Bug fixes and minor enhancements have been applied to B::Deparse,Data::Dumper, IO::Poll, IO::Socket::INET, Math::BigFloat,Math::Complex, Math::Trig, Net::protoent, the re pragma, SelfLoader,Sys::SysLog, Test::Harness, Text::Wrap, UNIVERSAL, and the warningspragma.=item *The attributes::reftype() now works on tied arguments.=item *AutoLoader can now be disabled with C<no AutoLoader;>,=item *The English module can now be used without the infamous performancehit by saying	use English '-no_performance_hit';(Assuming, of course, that one doesn't need the troublesome variablesC<$`>, C<$&>, or C<$'>.)  Also, introduced C<@LAST_MATCH_START> andC<@LAST_MATCH_END> English aliases for C<@-> and C<@+>.=item *File::Find now has pre- and post-processing callbacks.  It alsocorrectly changes directories when chasing symbolic links.  Callbacks(naughtily) exiting with "next;" instead of "return;" now work.=item *File::Glob::glob() renamed to File::Glob::bsd_glob() to avoidprototype mismatch with CORE::glob().=item *IPC::Open3 now allows the use of numeric file descriptors.=item *use lib now works identically to @INC.  Removing directorieswith 'no lib' now works.=item *C<%INC> now localised in a Safe compartment so that use/require work.=item *The Shell module now has an OO interface.=back=head1 Utility Changes=over 4=item *The Emacs perl mode (emacs/cperl-mode.el) has been updated to version4.31.=item *Perlbug is now much more robust.  It also sends the bug report toperl.org, not perl.com.=item *The perlcc utility has been rewritten and its user interface (that is,command line) is much more like that of the UNIX C compiler, cc.=item *The xsubpp utility for extension writers now understands PODdocumentation embedded in the *.xs files.=back=head1 New Documentation=over 4=item *perl56delta details the changes between the 5.005 release and the5.6.0 release.=item *perldebtut is a Perl debugging tutorial.=item *perlebcdic contains considerations for running Perl on EBCDIC platforms.Note that unfortunately EBCDIC platforms that used to supported back inPerl 5.005 are still unsupported by Perl 5.7.0; the plan, however, is tobring them back to the fold.  =item *perlnewmod tells about writing and submitting a new module.=item *perlposix-bc explains using Perl on the POSIX-BC platform(an EBCDIC mainframe platform).=item *perlretut is a regular expression tutorial.=item *perlrequick is a regular expressions quick-start guide.Yes, much quicker than perlretut.=item *perlutil explains the command line utilities packaged with the Perldistribution.=back=head1 Performance Enhancements=over 4=item *map() that changes the size of the list should now work faster.=item *sort() has been changed to use mergesort internally as opposed to theearlier quicksort.  For very small lists this may result in slightlyslower sorting times, but in general the speedup should be at least20%.  Additional bonuses are that the worst case behaviour of sort()is now better (in computer science terms it now runs in time O(N log N),as opposed to quicksort's Theta(N**2) worst-case run time behaviour),and that sort() is now stable (meaning that elements with identicalkeys will stay ordered as they were before the sort).=back=head1 Installation and Configuration Improvements=head2 Generic Improvements=over 4=item *INSTALL now explains how you can configure Perl to use 64-bitintegers even on non-64-bit platforms.=item *Policy.sh policy change: if you are reusing a Policy.sh file(see INSTALL) and you use Configure -Dprefix=/foo/bar and in the oldPolicy $prefix eq $siteprefix and $prefix eq $vendorprefix, all ofthem will now be changed to the new prefix, /foo/bar.  (Previouslyonly $prefix changed.)  If you do not like this new behaviour,specify prefix, siteprefix, and vendorprefix explicitly.=item *A new optional location for Perl libraries, otherlibdirs, is available.It can be used for example for vendor add-ons without disturbing Perl'sown library directories.=item *In many platforms the vendor-supplied 'cc' is too stripped-down tobuild Perl (basically, 'cc' doesn't do ANSI C).  If this seemsto be the case and 'cc' does not seem to be the GNU C compiler'gcc', an automatic attempt is made to find and use 'gcc' instead.=item *gcc needs to closely track the operating system release to avoidbuild problems. If Configure finds that gcc was built for a differentoperating system release than is running, it now gives a clearly visiblewarning that there may be trouble ahead.=item *If binary compatibility with the 5.005 release is not wanted, Configureno longer suggests including the 5.005 modules in @INC.=item *Configure C<-S> can now run non-interactively.=item *configure.gnu now works with options with whitespace in them.=item *installperl now outputs everything to STDERR.=item *$Config{byteorder} is now computed dynamically (this is more robustwith "fat binaries" where an executable image contains binaries formore than one binary platform.)=back=head1 Selected Bug Fixes=over 4=item *Several debugger fixes: exit code now reflects the script exit code,condition C<"0"> now treated correctly, the C<d> command now checksline number, the C<$.> no longer gets corrupted, all debugger output nowgoes correctly to the socket if RemotePort is set.=item *C<*foo{FORMAT}> now works.=item *Lexical warnings now propagating correctly between scopes.=item *Line renumbering with eval and C<#line> now works.=item *Fixed numerous memory leaks, especially in eval "".=item *Modulus of unsigned numbers now works (4063328477 % 65535 used toreturn 27406, instead of 27047).=item *Some "not a number" warnings introduced in 5.6.0 eliminated to bemore compatible with 5.005.  Infinity is now recognised as a number.=item *our() variables will not cause "will not stay shared" warnings.=item *pack "Z" now correctly terminates the string with "\0".=item *Fix password routines which in some shadow password platforms(e.g. HP-UX) caused getpwent() to return every other entry.=item *printf() no longer resets the numeric locale to "C".=item *C<q(a\\b)> now parses correctly as C<'a\\b'>.=item *Printing quads (64-bit integers) with printf/sprintf now workswithout the q L ll prefixes (assuming you are on a quad-capable platform).=item *Regular expressions on references and overloaded scalars now work.

⌨️ 快捷键说明

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