---- _SB/Libc/string/FreeBSD/strcat.3 2003-05-20 15:23:54.000000000 -0700
-+++ _SB/Libc/string/FreeBSD/strcat.3.edit 2006-06-28 16:55:53.000000000 -0700
-@@ -40,16 +40,24 @@
- .Dt STRCAT 3
- .Os
- .Sh NAME
--.Nm strcat
-+.Nm strcat ,
-+.Nm strncat
- .Nd concatenate strings
- .Sh LIBRARY
- .Lb libc
+--- strcat.3.orig 2010-06-17 08:44:44.000000000 -0700
++++ strcat.3 2010-06-17 08:46:22.000000000 -0700
+@@ -44,9 +44,16 @@
.Sh SYNOPSIS
.In string.h
.Ft char *
.Sh DESCRIPTION
The
.Fn strcat
-@@ -57,22 +65,22 @@
+@@ -54,24 +61,27 @@ and
.Fn strncat
functions
append a copy of the null-terminated string
+.Fa s2 ,
and then adds a terminating
.Ql \e0 .
++.Pp
++The source and destination strings should not overlap, as the
++behavior is undefined.
.Sh RETURN VALUES
-@@ -82,7 +90,7 @@
+ The
+ .Fn strcat
+@@ -79,7 +89,7 @@ and
.Fn strncat
functions
return the pointer
.Sh SECURITY CONSIDERATIONS
The
.Fn strcat
-@@ -114,7 +122,7 @@
+@@ -111,7 +121,7 @@ Example:
void
foo(const char *arbitrary_string)
{
#if defined(BAD)
/*
-@@ -149,11 +157,6 @@
- .Xr strcpy 3 ,
- .Xr strlcat 3 ,
- .Xr strlcpy 3
--.Rs
--.%T "The FreeBSD Security Architecture"
--.Re
--(See
--.Pa "/usr/share/doc/{to be decided}" . )
- .Sh STANDARDS
- The
- .Fn strcat