[BACK]Return to fuse_opt.h CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / lib / librefuse

Annotation of src/lib/librefuse/fuse_opt.h, Revision 1.7

1.7     ! pho         1: /*     $NetBSD: fuse_opt.h,v 1.6 2016/01/22 22:39:29 dholland Exp $    */
1.2       xtraeme     2:
1.1       xtraeme     3: /*
                      4:  * Copyright (c) 2007 Alistair Crooks.  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. The name of the author may not be used to endorse or promote
                     15:  *    products derived from this software without specific prior written
                     16:  *    permission.
                     17:  *
                     18:  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
                     19:  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
                     20:  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
                     21:  * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
                     22:  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
                     23:  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
                     24:  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                     25:  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
                     26:  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
                     27:  * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
                     28:  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
                     29:  */
                     30:
                     31: #ifndef _FUSE_OPT_H_
                     32: #define _FUSE_OPT_H_
                     33:
1.6       dholland   34: #include <stdint.h>
                     35:
1.5       christos   36: #ifdef __cplusplus
                     37: extern "C" {
                     38: #endif
                     39:
1.1       xtraeme    40: enum {
                     41:        FUSE_OPT_KEY_OPT = -1,
                     42:        FUSE_OPT_KEY_NONOPT = -2,
                     43:        FUSE_OPT_KEY_KEEP = -3,
                     44:        FUSE_OPT_KEY_DISCARD = -4
                     45: };
                     46:
                     47: struct fuse_opt {
                     48:        const char      *templ;
                     49:        int32_t         offset;
                     50:        int32_t         value;
                     51: };
                     52:
                     53: #define FUSE_OPT_KEY(templ, key) { templ, -1U, key }
                     54: #define FUSE_OPT_END { .templ = NULL }
                     55:
                     56: typedef int (*fuse_opt_proc_t)(void *, const char *, int, struct fuse_args *);
                     57:
                     58:
                     59: int fuse_opt_add_arg(struct fuse_args *, const char *);
1.4       christos   60: struct fuse_args *fuse_opt_deep_copy_args(int, char **);
1.1       xtraeme    61: void fuse_opt_free_args(struct fuse_args *);
                     62: int fuse_opt_insert_arg(struct fuse_args *, int, const char *);
                     63: int fuse_opt_add_opt(char **, const char *);
1.7     ! pho        64: int fuse_opt_add_opt_escaped(char **, const char *);
1.1       xtraeme    65: int fuse_opt_parse(struct fuse_args *, void *,
                     66:                   const struct fuse_opt *, fuse_opt_proc_t);
                     67: int fuse_opt_match(const struct fuse_opt *, const char *);
                     68:
1.5       christos   69: #ifdef __cplusplus
                     70: }
                     71: #endif
                     72:
1.1       xtraeme    73: #endif /* _FUSE_OPT_H_ */

CVSweb <webmaster@jp.NetBSD.org>