Don't assume that there is only one way to get through firewalls
to the public Internet.
+Don't assume that you can reach outside world through any other port
+than 80, or some web proxy. ftp is blocked by many firewalls.
+
+Don't assume that you can send email by connecting to the local SMTP port.
+
Don't assume that you can reach yourself or any node by the name
-'localhost'. The same goes for '127.0.0.1'.
+'localhost'. The same goes for '127.0.0.1'. You will have to try both.
-Don't assume that any particular port (service) will respond.
+Don't assume that the host has only one network card, or that it
+can't bind to many virtual IP addresses.
+
+Don't assume a particular network device name.
+
+Don't assume a particular set of ioctl()s will work.
Don't assume that you can ping hosts and get replies.
+Don't assume that any particular port (service) will respond.
+
+Don't assume that Sys::Hostname() (or any other API or command)
+returns either a fully qualified hostname or a non-qualified hostname:
+it all depends on how the system had been configured. Also remember
+things like DHCP and NAT-- the hostname you get back might not be very
+useful.
+
+All the above "don't":s may look daunting, and they are -- but the key
+is to degrade gracefully if one cannot reach the particular network
+service one wants. Croaking or hanging do not look very professional.
+
=head2 Interprocess Communication (IPC)
In general, don't directly access the system in code meant to be
C<-x> (or C<-X>) determine if a file has an executable file type.
(S<RISC OS>)
-=item alarm SECONDS
-
-=item alarm
-
-Not implemented. (Win32)
-
=item binmode FILEHANDLE
Meaningless. (S<Mac OS>, S<RISC OS>)
L<perlaix>, L<perlamiga>, L<perlapollo>, L<perlbeos>, L<perlbs2000>,
L<perlce>, L<perlcygwin>, L<perldgux>, L<perldos>, L<perlepoc>,
L<perlebcdic>, L<perlfreebsd>, L<perlhurd>, L<perlhpux>, L<perlirix>,
-L<perlmachten>, L<perlmacos>, L<perlmint>, L<perlmpeix>,
+L<perlmachten>, L<perlmacos>, L<perlmacosx>, L<perlmint>, L<perlmpeix>,
L<perlnetware>, L<perlos2>, L<perlos390>, L<perlos400>,
L<perlplan9>, L<perlqnx>, L<perlsolaris>, L<perltru64>,
L<perlunicode>, L<perlvmesa>, L<perlvms>, L<perlvos>,