Submitted by: Akira Ikeuchi <a_ikeuchi@mic.mitsumi.co.jp> Reviewed by: Watanabe Kazuhiro <CQG00620@nifty.ne.jp>
365 lines
8 KiB
Groff
365 lines
8 KiB
Groff
.\"-
|
|
.\" Copyright (c) 2000 Poul Henning Kamp and Dag-Erling Coïdan Smørgrav
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" %FreeBSD: src/share/man/man9/sbuf.9,v 1.24 2004/07/09 11:44:49 des Exp %
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.Dd July 9, 2004
|
|
.Dt SBUF 9
|
|
.Os
|
|
.Sh ̾¾Î
|
|
.Nm sbuf_new ,
|
|
.Nm sbuf_clear ,
|
|
.Nm sbuf_setpos ,
|
|
.Nm sbuf_bcat ,
|
|
.Nm sbuf_bcopyin ,
|
|
.Nm sbuf_bcpy ,
|
|
.Nm sbuf_cat ,
|
|
.Nm sbuf_copyin ,
|
|
.Nm sbuf_cpy ,
|
|
.Nm sbuf_printf ,
|
|
.Nm sbuf_vprintf ,
|
|
.Nm sbuf_putc ,
|
|
.Nm sbuf_trim ,
|
|
.Nm sbuf_overflowed ,
|
|
.Nm sbuf_finish ,
|
|
.Nm sbuf_data ,
|
|
.Nm sbuf_len ,
|
|
.Nm sbuf_done ,
|
|
.Nm sbuf_delete
|
|
.Nd °ÂÁ´¤Êʸ»úÎó¥Õ¥©¡¼¥Þ¥Ã¥È
|
|
.Sh ½ñ¼°
|
|
.In sys/types.h
|
|
.In sys/sbuf.h
|
|
.Ft struct sbuf *
|
|
.Fn sbuf_new "struct sbuf *s" "char *buf" "int length" "int flags"
|
|
.Ft void
|
|
.Fn sbuf_clear "struct sbuf *s"
|
|
.Ft int
|
|
.Fn sbuf_setpos "struct sbuf *s" "int pos"
|
|
.Ft int
|
|
.Fn sbuf_bcat "struct sbuf *s" "const void *buf" "size_t len"
|
|
.Ft int
|
|
.Fn sbuf_bcopyin "struct sbuf *s" "const void *uaddr" "size_t len"
|
|
.Ft int
|
|
.Fn sbuf_bcpy "struct sbuf *s" "const void *buf" "size_t len"
|
|
.Ft int
|
|
.Fn sbuf_cat "struct sbuf *s" "const char *str"
|
|
.Ft int
|
|
.Fn sbuf_copyin "struct sbuf *s" "const void *uaddr" "size_t len"
|
|
.Ft int
|
|
.Fn sbuf_cpy "struct sbuf *s" "const char *str"
|
|
.Ft int
|
|
.Fn sbuf_printf "struct sbuf *s" "const char *fmt" "..."
|
|
.Ft int
|
|
.Fn sbuf_vprintf "struct sbuf *s" "const char *fmt" "va_list ap"
|
|
.Ft int
|
|
.Fn sbuf_putc "struct sbuf *s" "int c"
|
|
.Ft int
|
|
.Fn sbuf_trim "struct sbuf *s"
|
|
.Ft int
|
|
.Fn sbuf_overflowed "struct sbuf *s"
|
|
.Ft void
|
|
.Fn sbuf_finish "struct sbuf *s"
|
|
.Ft char *
|
|
.Fn sbuf_data "struct sbuf *s"
|
|
.Ft int
|
|
.Fn sbuf_len "struct sbuf *s"
|
|
.Ft int
|
|
.Fn sbuf_done "struct sbuf *s"
|
|
.Ft void
|
|
.Fn sbuf_delete "struct sbuf *s"
|
|
.Sh ²òÀâ
|
|
.Nm sbuf
|
|
¥Õ¥¡¥ß¥ê¤Î´Ø¿ô¤Ï¡¢¥«¡¼¥Í¥ë¶õ´ÖÆâ¤Î¶³¦¤Î¤¢¤ë¥Ì¥ë½ªÃ¼Ê¸»úÎó¤Î¡¢
|
|
°ÂÁ´¤Ê³ä¤êÅö¤Æ¡¢¹½ÃÛ¡¢¤ª¤è¤Ó²òÊü¤ò²Äǽ¤Ë¤·¤Þ¤¹¡£
|
|
¤³¤ì¤é¤Î´Ø¿ô¤Ï¡¢Ê¸»ú¤ÎÇÛÎó¤ÎÂå¤ï¤ê¤Ë¡¢
|
|
.In sys/sbuf.h
|
|
¤ÇÄêµÁ¤µ¤ì¤ë
|
|
.Fa sbuf
|
|
¤È¸Æ¤Ð¤ì¤ë¹½Â¤ÂΤòÁàºî¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_new
|
|
´Ø¿ô¤ÏºÇ½é¤Î°ú¿ô¤Ç»Ø¤µ¤ì¤ë
|
|
.Fa sbuf
|
|
¤ò½é´ü²½¤·¤Þ¤¹¡£
|
|
¤½¤Î¥Ý¥¤¥ó¥¿¤¬
|
|
.Dv NULL
|
|
¤Î¾ì¹ç¤Ë¤Ï¡¢
|
|
.Fn sbuf_new
|
|
¤Ï
|
|
.Vt struct sbuf
|
|
¹½Â¤ÂΤò
|
|
.Xr malloc 9
|
|
¤ò»ÈÍѤ·¤Æ³ä¤êÅö¤Æ¤Þ¤¹¡£
|
|
.Fa buf
|
|
°ú¿ô¤Ï¼ÂºÝ¤Ëʸ»úÎ󤬳ÊǼ¤µ¤ì¤ë¥Ð¥Ã¥Õ¥¡¤Ø¤Î¥Ý¥¤¥ó¥¿¤Ç¡¢
|
|
.Dv NULL
|
|
¤Î¾ì¹ç¤Ë¤Ï¡¢
|
|
.Fn sbuf_new
|
|
¤Ï
|
|
.Xr malloc 9
|
|
¤ò»ÈÍѤ·¤Æ¥Ð¥Ã¥Õ¥¡¤ò³ä¤êÅö¤Æ¤Þ¤¹¡£
|
|
.Fa length
|
|
¤Ï³ÊǼ¥Ð¥Ã¥Õ¥¡¤Î½é´ü¤ÎÂ礤µ¤Ç¤¹¡£
|
|
4 ÈÖÌܤΰú¿ô
|
|
.Fa flags
|
|
¤Ï°Ê²¼¤Î¥Õ¥é¥°¤«¤é¹½À®¤µ¤ìÆÀ¤Þ¤¹:
|
|
.Bl -tag -width ".Dv SBUF_AUTOEXTEND"
|
|
.It Dv SBUF_FIXEDLEN
|
|
³ÊǼ¥Ð¥Ã¥Õ¥¡¤Ï½é´ü¥µ¥¤¥º¤Ç¸ÇÄê¤Ç¤¹¡£
|
|
¤³¤ì¤ò±Û¤¨¤Æ sbuf ¤ò³ÈÄ¥¤·¤è¤¦¤È¤¹¤ë¤È¡¢¥ª¡¼¥Ð¥Õ¥í¡¼¾õÂ֤Ȥʤê¤Þ¤¹¡£
|
|
.It Dv SBUF_AUTOEXTEND
|
|
¤³¤ì¤Ï¡¢Äɲåǡ¼¥¿¤Î³ÊǼ¤Î¤¿¤á¤ËɬÍפʤé¤Ð¡¢
|
|
»ñ¸»¤Îµö¤¹¸Â¤ê¤Ë¤ª¤¤¤Æ¡¢³ÊǼ¥Ð¥Ã¥Õ¥¡¤Ï³ÈÄ¥²Äǽ¤Ç¤¢¤ë¤³¤È¤ò¼¨¤·¤Þ¤¹¡£
|
|
.El
|
|
.Pp
|
|
.Fa buf
|
|
¤¬
|
|
.Dv NULL
|
|
¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢¾¯¤Ê¤¯¤È¤â
|
|
.Fa length
|
|
ʸ»ú°Ê¾å¤ÎÇÛÎó¤ò»Ø¤µ¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
|
|
sbuf ¤Ë¤è¤Ã¤Æ»ÈÍѤµ¤ì¤Æ¤¤¤ë´Ö¤ËľÀܤ½¤ÎÇÛÎó¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤³¤È¤Î·ë²Ì¤Ï
|
|
̤ÄêµÁ¤Ç¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_delete
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤ò¥¯¥ê¥¢¤·¤Æ¡¢¤½¤Î¤¿¤á¤Ë³ä¤êÅö¤Æ¤é¤ì¤¿Á´¤Æ¤Î¥á¥â¥ê¤ò³«Êü¤·¤Þ¤¹¡£
|
|
Á´¤Æ¤Î
|
|
.Fn sbuf_new
|
|
¤Ø¤Î¸Æ¤Ó½Ð¤·¤Î¤¿¤á¤Î
|
|
.Fn sbuf_delete
|
|
¤Î¸Æ¤Ó½Ð¤·¤¬¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
|
|
ºï½ü¤µ¤ì¤¿¸å¤Î sbuf ¤Ø¤ÎÁ´¤Æ¤Î¥¢¥¯¥»¥¹¤Î»î¤ß¤Ï¼ºÇÔ¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_clear
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤ÎÆâÍÆ¤ò̵¸ú¤Ë¤·¡¢°ÌÃÖ¤ò 0 ¤Ë¥ê¥»¥Ã¥È¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_setpos
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤Î½ªÎ»°ÌÃÖ¤ò¡¢0 ¤È³ÊǼ¥Ð¥Ã¥Õ¥¡¤ÎÂ礤µ¤è¤ê¤â 1 ¾®¤µ¤¤Ãͤδ֤ÎÃͤǤ¢¤ë
|
|
.Fa pos
|
|
¤ËÀßÄꤷ¤Þ¤¹¡£
|
|
·ë²Ì¤È¤·¤Æ¡¢¿·¤·¤¤°ÌÃ֤ˤª¤¤¤Æ sbuf ¤ÎÀèü¤òÀÚ¤ê¼Î¤Æ¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_bcat
|
|
´Ø¿ô¤Ï¥Ð¥Ã¥Õ¥¡
|
|
.Fa buf
|
|
¤ÎºÇ½é¤Î
|
|
.Fa len
|
|
¥Ð¥¤¥È¤ò
|
|
.Fa sbuf
|
|
¤ËÄɲä·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_bcopyin
|
|
´Ø¿ô¤ÏÌÀ¼¨¤µ¤ì¤¿¥æ¡¼¥¶¶õ´Ö¥¢¥É¥ì¥¹¤«¤é
|
|
.Fa sbuf
|
|
¤Ë
|
|
.Fa len
|
|
¥Ð¥¤¥È¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_bcpy
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤ÎÆâÍÆ¤ò¥Ð¥Ã¥Õ¥¡
|
|
.Fa buf
|
|
¤ÎºÇ½é¤Î
|
|
.Fa len
|
|
¥Ð¥¤¥È¤ÇÃÖ¤´¹¤¨¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_cat
|
|
´Ø¿ô¤Ï NUL ʸ»ú¤Ç½ªÃ¼¤µ¤ì¤¿Ê¸»úÎó
|
|
.Fa str
|
|
¤ò
|
|
.Fa sbuf
|
|
¤Î¸½ºß°ÌÃÖ¤ËÄɲä·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_copyin
|
|
´Ø¿ô¤Ï NUL ʸ»ú¤Ç½ªÃ¼¤µ¤ì¤¿Ê¸»úÎó¤òÌÀ¼¨¤µ¤ì¤¿¥æ¡¼¥¶¶õ´Ö¥¢¥É¥ì¥¹¤«¤é
|
|
.Fa sbuf
|
|
¤Ë¥³¥Ô¡¼¤·¤Þ¤¹¡£
|
|
.Fa len
|
|
°ú¿ô¤¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï
|
|
.Fa len
|
|
ʸ»ú¤ò±Û¤¨¤Ê¤¤Ê¸»ú (½ªÃ¼¤Î NUL ¤Ï¿ô¤¨¤Þ¤»¤ó) ¤¬¥³¥Ô¡¼¤µ¤ì¡¢
|
|
¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ïʸ»úÎóÁ´ÂΡ¢¤Þ¤¿¤Ï
|
|
.Fa sbuf
|
|
¤ËµÍ¤á¹þ¤à¤³¤È¤¬½ÐÍè¤ë¤À¤±¤Îʸ»ú¤ò¥³¥Ô¡¼¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_cpy
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤ÎÆâÍÆ¤ò NUL ʸ»ú¤Ç½ªÃ¼¤µ¤ì¤¿Ê¸»úÎó
|
|
.Fa str
|
|
¤ÇÃÖ¤´¹¤¨¤Þ¤¹¡£
|
|
¤³¤ì¤Ï¿·¤·¤¤
|
|
.Fa sbuf
|
|
¤Ç¡¢¤Þ¤¿¤Ï
|
|
.Fn sbuf_clear
|
|
¤«
|
|
.Fn sbuf_setpos
|
|
¤Ç¤½¤Î°ÌÃÖ¤ò 0 ¤Ë¥ê¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ë
|
|
.Fa sbuf
|
|
¤Ç¡¢
|
|
.Fn sbuf_cat
|
|
¤ò¸Æ¤Ó½Ð¤¹¤³¤È¤ÈÅù²Á¤Ç¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_printf
|
|
´Ø¿ô¤Ï
|
|
.Fa fmt
|
|
¤Ë¤è¤Ã¤Æ»Ø¤µ¤ì¤Æ¤¤¤ë¥Õ¥©¡¼¥Þ¥Ã¥Èʸ»úÎó¤Ë½¾¤Ã¤Æ¤½¤Î°ú¿ô¤ò¥Õ¥©¡¼¥Þ¥Ã¥È¤·¡¢
|
|
¤½¤Î·ë²Ì¤Îʸ»úÎó¤ò
|
|
.Fa sbuf
|
|
¤Î¸½ºß°ÌÃÖ¤ËÄɲä·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_vprintf
|
|
´Ø¿ô¤Ï
|
|
.Fn sbuf_printf
|
|
¤ÈƱÍͤ˿¶Éñ¤¤¤Þ¤¹¤¬¡¢°ú¿ô¤¬²ÄÊÑŰú¿ô¥ê¥¹¥È
|
|
.Fa ap
|
|
¤«¤é¼èÆÀ¤µ¤ì¤ë¤³¤È¤¬°ã¤¤¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_putc
|
|
´Ø¿ô¤Ïʸ»ú
|
|
.Fa c
|
|
¤ò
|
|
.Fa sbuf
|
|
¤Î¸½ºß°ÌÃÖ¤ËÄɲä·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_trim
|
|
´Ø¿ô¤ÏËöÈø¤Î¶õÇò¤ò
|
|
.Fa sbuf
|
|
¤«¤é½üµî¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_overflowed
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤¬¥ª¡¼¥Ð¥Õ¥í¡¼¤·¤Æ¤¤¤ë¾ì¹ç¤Ë 0 °Ê³°¤ÎÃͤòÊÖ¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_finish
|
|
´Ø¿ô¤Ï
|
|
.Fa sbuf
|
|
¤ò¥Ì¥ë¤Ç½ªÃ¼¤·¡¢¤³¤ì°Ê¾å
|
|
.Fn sbuf_setpos ,
|
|
.Fn sbuf_cat ,
|
|
.Fn sbuf_cpy ,
|
|
.Fn sbuf_printf
|
|
¤Þ¤¿¤Ï
|
|
.Fn sbuf_putc
|
|
¤ò»ÈÍѤ·¤Æ½¤Àµ¤µ¤ì¤ë¤³¤È¤¬Ìµ¤¤¤³¤È¤ò°ÕÌ£¤¹¤ë´°Î»¥Þ¡¼¥¯¤òÉÕ¤±¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_data
|
|
¤ª¤è¤Ó
|
|
.Fn sbuf_len
|
|
´Ø¿ô¤Ï¤½¤ì¤¾¤ì¸½ºß¤Îʸ»úÎó¤È¤½¤ÎŤµ¤òÊÖ¤·¤Þ¤¹¡£
|
|
.Fn sbuf_data
|
|
¤Ï´°Î»¤·¤¿
|
|
.Fa sbuf
|
|
¤ËÂФ·¤Æ¤Î¤ßµ¡Ç½¤·¤Þ¤¹¡£
|
|
.Fn sbuf_done
|
|
¤Ï¤½¤Î sbuf ¤¬½ªÎ»¤·¤¿¾ì¹ç¤Ë¤Ï¡¢0 ¤Ç¤Ê¤¤ÃͤòÊÖ¤·¤Þ¤¹¡£
|
|
.Sh Ãí
|
|
¤¢¤ëÁàºî¤¬
|
|
.Fa sbuf
|
|
¤ò¥ª¡¼¥Ð¥Õ¥í¡¼¤µ¤»¤¿¾ì¹ç¤Ë¤Ï¡¢¤½¤Î
|
|
.Fa sbuf
|
|
¤¬
|
|
.Fn sbuf_finish
|
|
¤ò»ÈÍѤ·¤Æ´°Î»¤µ¤»¤é¤ì¤ë¡¢¤Þ¤¿¤Ï
|
|
.Fn sbuf_clear
|
|
¤ò»ÈÍѤ·¤Æ¥ê¥»¥Ã¥È¤µ¤ì¤ë¡¢¤Þ¤¿¤Ï
|
|
.Fn sbuf_setpos
|
|
¤ò»ÈÍѤ·¤Æ¤½¤Î°ÌÃÖ¤ò 0 ¤«¤é³ÊǼ¥Ð¥Ã¥Õ¥¡¤ÎÂ礤µ¤è¤ê 1 ¾®¤µ¤¤ÃͤޤǤÎÃͤË
|
|
¥ê¥»¥Ã¥È¤µ¤ì¤ë¡¢¤Þ¤¿¤Ï
|
|
.Fn sbuf_cpy
|
|
¤ò»ÈÍѤ·¤Æ½½Ê¬¤Ëû¤¤Ê¸»úÎó¤Ë½é´ü²½¤µ¤ì¤ë¤Þ¤Ç¤Î´Ö¤Ï¡¢¸å¤Ë³¤¯¤Û¤È¤ó¤É¤Î¤½¤Î
|
|
.Fa sbuf
|
|
¤ËÂФ¹¤ëÁàºî¤Ï¼ºÇÔ¤¹¤ë¤Ç¤·¤ç¤¦¡£
|
|
.Sh Ìá¤êÃÍ
|
|
.Fn sbuf_new
|
|
¤Ï³ÊǼ¥Ð¥Ã¥Õ¥¡¤Î³ä¤êÅö¤Æ¤Ë¼ºÇÔ¤·¤¿¾ì¹ç¤Ë¤Ï
|
|
.Dv NULL
|
|
¤òÊÖ¤·¡¢¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¿·¤·¤¤
|
|
.Fa sbuf
|
|
¤Ø¤Î¥Ý¥¤¥ó¥¿¤òÊÖ¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_setpos
|
|
¤Ï
|
|
.Fa pos
|
|
¤¬ÉÔÀµ¤Ê¾ì¹ç¤Ë¤Ï \-1 ¤òÊÖ¤·¡¢¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï 0 ¤òÊÖ¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_cat ,
|
|
.Fn sbuf_cpy ,
|
|
.Fn sbuf_printf ,
|
|
.Fn sbuf_putc ,
|
|
.Fn sbuf_trim
|
|
¤ÏÁ´¤Æ¥Ð¥Ã¥Õ¥¡¤¬¥ª¡¼¥Ð¥Õ¥í¡¼¤·¤¿¾ì¹ç¤Ë¤Ï \-1 ¤òÊÖ¤·¡¢
|
|
¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï 0 ¤òÊÖ¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_overflowed
|
|
¤Ï¥Ð¥Ã¥Õ¥¡¤¬¥ª¡¼¥Ð¥Õ¥í¡¼¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï 0 °Ê³°¤ËÃͤòÊÖ¤·¡¢
|
|
¤½¤¦¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï 0 ¤òÊÖ¤·¤Þ¤¹¡£
|
|
.Pp
|
|
.Fn sbuf_data
|
|
¤ª¤è¤Ó
|
|
.Fn sbuf_len
|
|
¤Ï¥Ð¥Ã¥Õ¥¡¤¬¥ª¡¼¥Ð¥Õ¥í¡¼¤·¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¤½¤ì¤¾¤ì
|
|
.Dv NULL
|
|
¤ª¤è¤Ó \-1 ¤òÊÖ¤·¤Þ¤¹¡£
|
|
.Sh ´ØÏ¢¹àÌÜ
|
|
.Xr printf 3 ,
|
|
.Xr strcat 3 ,
|
|
.Xr strcpy 3 ,
|
|
.Xr copyin 9 ,
|
|
.Xr copyinstr 9 ,
|
|
.Xr printf 9
|
|
.Sh Îò»Ë
|
|
.Nm sbuf
|
|
¥Õ¥¡¥ß¥ê¤Î´Ø¿ô¤Ï
|
|
.Fx 4.4
|
|
¤Ç¤Ï¤¸¤á¤ÆÅо줷¤Þ¤·¤¿¡£
|
|
.Sh ºî¼Ô
|
|
.An -nosplit
|
|
.Nm sbuf
|
|
¥Õ¥¡¥ß¥ê¤Î´Ø¿ô¤Ï
|
|
.An Poul-Henning Kamp Aq phk@FreeBSD.org
|
|
¤¬À߷פ·¡¢
|
|
.An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org
|
|
¤¬¼ÂÁõ¤·¤Þ¤·¤¿¡£
|
|
ÄɲäβþÎɤÏ
|
|
.An Justin T. Gibbs Aq gibbs@FreeBSD.org
|
|
¤¬Ä󰯤·¤Þ¤·¤¿¡£
|
|
¼«Æ°³ÈÄ¥¥µ¥Ý¡¼¥È¤Ï
|
|
.An Kelly Yancey Aq kbyanc@FreeBSD.org
|
|
¤¬Äɲä·¤Þ¤·¤¿¡£
|
|
.Pp
|
|
¤³¤Î¥Þ¥Ë¥å¥¢¥ë¥Ú¡¼¥¸¤Ï
|
|
.An Dag-Erling Sm\(/orgrav Aq des@FreeBSD.org
|
|
¤¬½ñ¤¤Þ¤·¤¿¡£
|