12654012fSReza Sabdar /* 2d0194491SJanice Chang * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. 3*faac71c0SJan Kryl * Copyright 2014 Nexenta Systems, Inc. All rights reserved. 42654012fSReza Sabdar */ 52654012fSReza Sabdar 62654012fSReza Sabdar /* 72654012fSReza Sabdar * BSD 3 Clause License 82654012fSReza Sabdar * 92654012fSReza Sabdar * Copyright (c) 2007, The Storage Networking Industry Association. 102654012fSReza Sabdar * 112654012fSReza Sabdar * Redistribution and use in source and binary forms, with or without 122654012fSReza Sabdar * modification, are permitted provided that the following conditions 132654012fSReza Sabdar * are met: 142654012fSReza Sabdar * - Redistributions of source code must retain the above copyright 152654012fSReza Sabdar * notice, this list of conditions and the following disclaimer. 162654012fSReza Sabdar * 172654012fSReza Sabdar * - Redistributions in binary form must reproduce the above copyright 182654012fSReza Sabdar * notice, this list of conditions and the following disclaimer in 192654012fSReza Sabdar * the documentation and/or other materials provided with the 202654012fSReza Sabdar * distribution. 212654012fSReza Sabdar * 222654012fSReza Sabdar * - Neither the name of The Storage Networking Industry Association (SNIA) 232654012fSReza Sabdar * nor the names of its contributors may be used to endorse or promote 242654012fSReza Sabdar * products derived from this software without specific prior written 252654012fSReza Sabdar * permission. 262654012fSReza Sabdar * 272654012fSReza Sabdar * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 282654012fSReza Sabdar * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 292654012fSReza Sabdar * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 302654012fSReza Sabdar * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 312654012fSReza Sabdar * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 322654012fSReza Sabdar * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 332654012fSReza Sabdar * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 342654012fSReza Sabdar * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 352654012fSReza Sabdar * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 362654012fSReza Sabdar * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 372654012fSReza Sabdar * POSSIBILITY OF SUCH DAMAGE. 382654012fSReza Sabdar */ 392654012fSReza Sabdar #ifndef _NDMPD_PROP_H 402654012fSReza Sabdar #define _NDMPD_PROP_H 412654012fSReza Sabdar 422654012fSReza Sabdar #include <sys/types.h> 432654012fSReza Sabdar #include <libscf.h> 442654012fSReza Sabdar 452654012fSReza Sabdar #ifdef __cplusplus 462654012fSReza Sabdar extern "C" { 472654012fSReza Sabdar #endif 482654012fSReza Sabdar 492654012fSReza Sabdar /* NDMP property parameter flags */ 502654012fSReza Sabdar #define NDMP_CF_NOTINIT 0x00 /* Not initialized yet */ 512654012fSReza Sabdar #define NDMP_CF_DEFINED 0x01 /* Defined/read from env */ 522654012fSReza Sabdar #define NDMP_CF_MODIFIED 0x02 /* Has been modified */ 532654012fSReza Sabdar 542654012fSReza Sabdar typedef enum { 552654012fSReza Sabdar NDMP_DAR_SUPPORT = 0, 562654012fSReza Sabdar NDMP_MOVER_NIC, 572654012fSReza Sabdar /* 582654012fSReza Sabdar * Force backing up the directories leading to 592654012fSReza Sabdar * a modified object for 'dump' format backup. 602654012fSReza Sabdar */ 612654012fSReza Sabdar NDMP_DUMP_PATHNODE_ENV, 622654012fSReza Sabdar /* 632654012fSReza Sabdar * Force backing up the directories leading to 642654012fSReza Sabdar * a modified object for 'tar' format backup. 652654012fSReza Sabdar */ 662654012fSReza Sabdar NDMP_TAR_PATHNODE_ENV, 672654012fSReza Sabdar /* 682654012fSReza Sabdar * Force to send the file history node entries 692654012fSReza Sabdar * along with the file history dir entries for 702654012fSReza Sabdar * all directories containing the changed files 712654012fSReza Sabdar * to the client for incremental backup. 722654012fSReza Sabdar * 732654012fSReza Sabdar * Note: This variable is added to support BakBone 742654012fSReza Sabdar * Software's NetVault DMA which expects to get the 752654012fSReza Sabdar * FH ADD NODES for all upper directories which 762654012fSReza Sabdar * contain the changed files in incremental backup 772654012fSReza Sabdar * along with the FH ADD DIRS. 782654012fSReza Sabdar */ 792654012fSReza Sabdar NDMP_FHIST_INCR_ENV, 802654012fSReza Sabdar /* Ignore st_ctime when backing up. */ 812654012fSReza Sabdar NDMP_IGNCTIME_ENV, 822654012fSReza Sabdar /* If we should check for the last modification time. */ 832654012fSReza Sabdar NDMP_INCLMTIME_ENV, 842654012fSReza Sabdar /* 852654012fSReza Sabdar * Environment variable name for the maximum permitted 862654012fSReza Sabdar * token sequence for token-based backups. 872654012fSReza Sabdar */ 882654012fSReza Sabdar NDMP_MAXSEQ_ENV, 892654012fSReza Sabdar /* Environment variable name for the active version. */ 902654012fSReza Sabdar NDMP_VERSION_ENV, 912654012fSReza Sabdar /* 922654012fSReza Sabdar * Environment variable name for restore path. 932654012fSReza Sabdar * Suppose that a dircetroy named "/d1/d11" is backed 942654012fSReza Sabdar * up and there is a file "/d1/d11/d111/f" under that 952654012fSReza Sabdar * directory and the restore path is "/d1/r1". 962654012fSReza Sabdar * If restore path mechanism is set to 0 which means 972654012fSReza Sabdar * partial path restore, then the result will be 982654012fSReza Sabdar * "/d1/r1/d111/f". If it is set to 1 which means full 992654012fSReza Sabdar * path restore, the result will be "/d1/r1/d1/d11/d111/f" 1002654012fSReza Sabdar */ 1012654012fSReza Sabdar NDMP_FULL_RESTORE_PATH, 1022654012fSReza Sabdar NDMP_DEBUG_PATH, 1032654012fSReza Sabdar NDMP_PLUGIN_PATH, 1042654012fSReza Sabdar NDMP_SOCKET_CSS, 1052654012fSReza Sabdar NDMP_SOCKET_CRS, 1062654012fSReza Sabdar NDMP_MOVER_RECSIZE, 1072654012fSReza Sabdar NDMP_RESTORE_WILDCARD_ENABLE, 1082654012fSReza Sabdar NDMP_CRAM_MD5_USERNAME, 1092654012fSReza Sabdar NDMP_CRAM_MD5_PASSWORD, 1102654012fSReza Sabdar NDMP_CLEARTEXT_USERNAME, 1112654012fSReza Sabdar NDMP_CLEARTEXT_PASSWORD, 1122654012fSReza Sabdar NDMP_TCP_PORT, 1132654012fSReza Sabdar NDMP_BACKUP_QTN, 1142654012fSReza Sabdar NDMP_RESTORE_QTN, 1152654012fSReza Sabdar NDMP_OVERWRITE_QTN, 116d0194491SJanice Chang NDMP_ZFS_FORCE_OVERRIDE, 1171e05b03fSJanice Chang NDMP_DRIVE_TYPE, 118*faac71c0SJan Kryl NDMP_DEBUG_MODE, 1192654012fSReza Sabdar NDMP_MAXALL 1202654012fSReza Sabdar } ndmpd_cfg_id_t; 1212654012fSReza Sabdar 1222654012fSReza Sabdar extern int ndmpd_load_prop(void); 1232654012fSReza Sabdar extern char *ndmpd_get_prop(ndmpd_cfg_id_t); 1242654012fSReza Sabdar extern char *ndmpd_get_prop_default(ndmpd_cfg_id_t, char *); 1252654012fSReza Sabdar extern int ndmpd_get_prop_yorn(ndmpd_cfg_id_t); 1262654012fSReza Sabdar 1272654012fSReza Sabdar #ifdef __cplusplus 1282654012fSReza Sabdar } 1292654012fSReza Sabdar #endif 1302654012fSReza Sabdar 1312654012fSReza Sabdar #endif /* _NDMPD_PROP_H */ 132