xref: /dflybsd-src/share/man/man9/kstrdup.9 (revision 2f1984b823644fa9b991a59ac53261f237301cee)
189214c7bSSascha Wildner.\"
289214c7bSSascha Wildner.\" Copyright (c) 2016 The DragonFly Project.  All rights reserved.
389214c7bSSascha Wildner.\"
489214c7bSSascha Wildner.\" Redistribution and use in source and binary forms, with or without
589214c7bSSascha Wildner.\" modification, are permitted provided that the following conditions
689214c7bSSascha Wildner.\" are met:
789214c7bSSascha Wildner.\"
889214c7bSSascha Wildner.\" 1. Redistributions of source code must retain the above copyright
989214c7bSSascha Wildner.\"    notice, this list of conditions and the following disclaimer.
1089214c7bSSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright
1189214c7bSSascha Wildner.\"    notice, this list of conditions and the following disclaimer in
1289214c7bSSascha Wildner.\"    the documentation and/or other materials provided with the
1389214c7bSSascha Wildner.\"    distribution.
1489214c7bSSascha Wildner.\" 3. Neither the name of The DragonFly Project nor the names of its
1589214c7bSSascha Wildner.\"    contributors may be used to endorse or promote products derived
1689214c7bSSascha Wildner.\"    from this software without specific, prior written permission.
1789214c7bSSascha Wildner.\"
1889214c7bSSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
1989214c7bSSascha Wildner.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
2089214c7bSSascha Wildner.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
2189214c7bSSascha Wildner.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE
2289214c7bSSascha Wildner.\" COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
2389214c7bSSascha Wildner.\" INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
2489214c7bSSascha Wildner.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
2589214c7bSSascha Wildner.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
2689214c7bSSascha Wildner.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
2789214c7bSSascha Wildner.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
2889214c7bSSascha Wildner.\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
2989214c7bSSascha Wildner.\" SUCH DAMAGE.
3089214c7bSSascha Wildner.\"
31*2f1984b8SSascha Wildner.Dd June 5, 2016
3289214c7bSSascha Wildner.Dt KSTRDUP 9
3389214c7bSSascha Wildner.Os
3489214c7bSSascha Wildner.Sh NAME
35*2f1984b8SSascha Wildner.Nm kstrdup ,
36*2f1984b8SSascha Wildner.Nm kstrndup
3789214c7bSSascha Wildner.Nd save a copy of a string
3889214c7bSSascha Wildner.Sh SYNOPSIS
3989214c7bSSascha Wildner.In sys/malloc.h
4089214c7bSSascha Wildner.Ft char *
4189214c7bSSascha Wildner.Fn kstrdup "const char *str" "struct malloc_type *type"
42*2f1984b8SSascha Wildner.Ft char *
43*2f1984b8SSascha Wildner.Fn kstrndup "const char *str" "size_t maxlen" "struct malloc_type *type"
4489214c7bSSascha Wildner.Sh DESCRIPTION
4589214c7bSSascha WildnerThe
46*2f1984b8SSascha Wildner.Fn kstrdup
47*2f1984b8SSascha Wildnerfunction allocates sufficient memory of type
4889214c7bSSascha Wildner.Fa type
4989214c7bSSascha Wildnerfor a copy of the string
5089214c7bSSascha Wildner.Fa str ,
5189214c7bSSascha Wildnerdoes the copy, and returns a pointer to it.
5289214c7bSSascha WildnerThe pointer may subsequently be used as an
5389214c7bSSascha Wildnerargument to the function
5489214c7bSSascha Wildner.Xr kfree 9 .
55*2f1984b8SSascha Wildner.Pp
56*2f1984b8SSascha WildnerThe
57*2f1984b8SSascha Wildner.Fn kstrndup
58*2f1984b8SSascha Wildnerfunction copies at most
59*2f1984b8SSascha Wildner.Fa maxlen
60*2f1984b8SSascha Wildnercharacters from the string
61*2f1984b8SSascha Wildner.Fa str
62*2f1984b8SSascha Wildnerand will always
63*2f1984b8SSascha Wildner.Dv NUL
64*2f1984b8SSascha Wildnerterminate the copied string.
6589214c7bSSascha Wildner.Sh SEE ALSO
6689214c7bSSascha Wildner.Xr kfree 9 ,
6789214c7bSSascha Wildner.Xr kmalloc 9
68