Source code pulled from OpenBSD for OpenNTPD. The place to contribute to this code is via the OpenBSD CVS tree.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
2.5 KiB

25 years ago
  1. .\" $OpenBSD: memccpy.3,v 1.12 2013/09/25 21:49:30 millert Exp $
  2. .\"
  3. .\" Copyright (c) 1990, 1991, 1993
  4. .\" The Regents of the University of California. All rights reserved.
  5. .\"
  6. .\" Redistribution and use in source and binary forms, with or without
  7. .\" modification, are permitted provided that the following conditions
  8. .\" are met:
  9. .\" 1. Redistributions of source code must retain the above copyright
  10. .\" notice, this list of conditions and the following disclaimer.
  11. .\" 2. Redistributions in binary form must reproduce the above copyright
  12. .\" notice, this list of conditions and the following disclaimer in the
  13. .\" documentation and/or other materials provided with the distribution.
  14. .\" 3. Neither the name of the University nor the names of its contributors
  15. .\" may be used to endorse or promote products derived from this software
  16. .\" without specific prior written permission.
  17. .\"
  18. .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  19. .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  20. .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  21. .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  22. .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  23. .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  24. .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  25. .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  26. .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  27. .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  28. .\" SUCH DAMAGE.
  29. .\"
  30. .\" @(#)memccpy.3 8.1 (Berkeley) 6/9/93
  31. .\"
  32. .Dd $Mdocdate: September 25 2013 $
  33. .Dt MEMCCPY 3
  34. .Os
  35. .Sh NAME
  36. .Nm memccpy
  37. .Nd copy string until character found
  38. .Sh SYNOPSIS
  39. .In string.h
  40. .Ft void *
  41. .Fn memccpy "void *dst" "const void *src" "int c" "size_t len"
  42. .Sh DESCRIPTION
  43. The
  44. .Fn memccpy
  45. function copies bytes from string
  46. .Fa src
  47. to string
  48. .Fa dst .
  49. If the character
  50. .Fa c
  51. (as converted to an
  52. .Li unsigned char )
  53. occurs in the string
  54. .Fa src ,
  55. the copy stops and a pointer to the byte after the copy of
  56. .Fa c
  57. in the string
  58. .Fa dst
  59. is returned.
  60. Otherwise,
  61. .Fa len
  62. bytes are copied, and a null pointer is returned.
  63. .Pp
  64. If the
  65. .Fa src
  66. and
  67. .Fa dst
  68. strings overlap, the behavior is undefined.
  69. .Sh SEE ALSO
  70. .Xr bcopy 3 ,
  71. .Xr memcpy 3 ,
  72. .Xr memmove 3 ,
  73. .Xr strcpy 3 ,
  74. .Xr strlcpy 3
  75. .Sh HISTORY
  76. The
  77. .Fn memccpy
  78. function first appeared in
  79. .At V
  80. and was reimplemented for
  81. .Bx 4.3 Tahoe .