14887Schin /*********************************************************************** 24887Schin * * 34887Schin * This software is part of the ast package * 4*12068SRoger.Faulkner@Oracle.COM * Copyright (c) 1982-2010 AT&T Intellectual Property * 54887Schin * and is licensed under the * 64887Schin * Common Public License, Version 1.0 * 78462SApril.Chin@Sun.COM * by AT&T Intellectual Property * 84887Schin * * 94887Schin * A copy of the License is available at * 104887Schin * http://www.opensource.org/licenses/cpl1.0.txt * 114887Schin * (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) * 124887Schin * * 134887Schin * Information and Software Systems Research * 144887Schin * AT&T Research * 154887Schin * Florham Park NJ * 164887Schin * * 174887Schin * David Korn <dgk@research.att.com> * 184887Schin * * 194887Schin ***********************************************************************/ 204887Schin #pragma prototyped 214887Schin 224887Schin #include <ast.h> 234887Schin #include "FEATURE/options" 244887Schin #include "FEATURE/dynamic" 254887Schin #include <shell.h> 264887Schin #include "shtable.h" 274887Schin #include "name.h" 284887Schin #include "defs.h" 298462SApril.Chin@Sun.COM #include "variables.h" 304887Schin 314887Schin /* 324887Schin * This is the list of built-in shell variables and default values 334887Schin * and default attributes. 344887Schin */ 354887Schin 364887Schin const struct shtable2 shtab_variables[] = 374887Schin { 384887Schin "PATH", 0, (char*)0, 394887Schin "PS1", 0, (char*)0, 404887Schin "PS2", NV_NOFREE, "> ", 414887Schin "IFS", NV_NOFREE, " \t\n", 424887Schin "PWD", 0, (char*)0, 434887Schin "HOME", 0, (char*)0, 444887Schin "MAIL", 0, (char*)0, 454887Schin "REPLY", 0, (char*)0, 464887Schin "SHELL", NV_NOFREE, "/bin/" SH_STD, 474887Schin "EDITOR", 0, (char*)0, 484887Schin "MAILCHECK", NV_NOFREE|NV_INTEGER, (char*)0, 494887Schin "RANDOM", NV_NOFREE|NV_INTEGER, (char*)0, 5010898Sroland.mainz@nrubsig.org "ENV", NV_NOFREE, (char*)0, 514887Schin "HISTFILE", 0, (char*)0, 524887Schin "HISTSIZE", 0, (char*)0, 534887Schin "HISTEDIT", NV_NOFREE, (char*)0, 544887Schin "HISTCMD", NV_NOFREE|NV_INTEGER, (char*)0, 554887Schin "FCEDIT", NV_NOFREE, "/bin/ed", 564887Schin "CDPATH", 0, (char*)0, 574887Schin "MAILPATH", 0, (char*)0, 584887Schin "PS3", NV_NOFREE, "#? ", 594887Schin "OLDPWD", 0, (char*)0, 604887Schin "VISUAL", 0, (char*)0, 614887Schin "COLUMNS", 0, (char*)0, 624887Schin "LINES", 0, (char*)0, 634887Schin "PPID", NV_NOFREE|NV_INTEGER, (char*)0, 644887Schin "_", NV_EXPORT, (char*)0, 654887Schin "TMOUT", NV_NOFREE|NV_INTEGER, (char*)0, 664887Schin "SECONDS", NV_NOFREE|NV_INTEGER|NV_DOUBLE, (char*)0, 674887Schin "LINENO", NV_NOFREE|NV_INTEGER, (char*)0, 684887Schin "OPTARG", 0, (char*)0, 694887Schin "OPTIND", NV_NOFREE|NV_INTEGER, (char*)0, 704887Schin "PS4", 0, (char*)0, 714887Schin "FPATH", 0, (char*)0, 724887Schin "LANG", 0, (char*)0, 734887Schin "LC_ALL", 0, (char*)0, 744887Schin "LC_COLLATE", 0, (char*)0, 754887Schin "LC_CTYPE", 0, (char*)0, 764887Schin "LC_MESSAGES", 0, (char*)0, 774887Schin "LC_NUMERIC", 0, (char*)0, 784887Schin "FIGNORE", 0, (char*)0, 798462SApril.Chin@Sun.COM "KSH_VERSION", 0, (char*)0, 8010898Sroland.mainz@nrubsig.org "JOBMAX", NV_NOFREE|NV_INTEGER, (char*)0, 814887Schin ".sh", NV_TABLE|NV_RDONLY|NV_NOFREE|NV_NOPRINT,(char*)0, 824887Schin ".sh.edchar", 0, (char*)0, 834887Schin ".sh.edcol", 0, (char*)0, 844887Schin ".sh.edtext", 0, (char*)0, 854887Schin ".sh.edmode", 0, (char*)0, 864887Schin ".sh.name", 0, (char*)0, 874887Schin ".sh.subscript",0, (char*)0, 884887Schin ".sh.value", 0, (char*)0, 894887Schin ".sh.version", NV_NOFREE, (char*)(&e_version[10]), 904887Schin ".sh.dollar", 0, (char*)0, 914887Schin ".sh.match", 0, (char*)0, 924887Schin ".sh.command", 0, (char*)0, 934887Schin ".sh.file", 0, (char*)0, 944887Schin ".sh.fun", 0, (char*)0, 954887Schin ".sh.subshell", NV_INTEGER|NV_SHORT|NV_NOFREE, (char*)0, 964887Schin ".sh.level", 0, (char*)0, 978462SApril.Chin@Sun.COM ".sh.lineno", NV_INTEGER|NV_RDONLY, (char*)0, 988462SApril.Chin@Sun.COM ".sh.stats", NV_RDONLY, (char*)0, 998462SApril.Chin@Sun.COM "SHLVL", NV_INTEGER|NV_NOFREE|NV_EXPORT, (char*)0, 1004887Schin #if SHOPT_FS_3D 1014887Schin "VPATH", 0, (char*)0, 1024887Schin #endif /* SHOPT_FS_3D */ 1034887Schin #if SHOPT_MULTIBYTE 1044887Schin "CSWIDTH", 0, (char*)0, 1054887Schin #endif /* SHOPT_MULTIBYTE */ 1064887Schin #ifdef apollo 1074887Schin "SYSTYPE", 0, (char*)0, 1084887Schin #endif /* apollo */ 1094887Schin "", 0, (char*)0 1104887Schin }; 1114887Schin 11210898Sroland.mainz@nrubsig.org const char *nv_discnames[] = { "get", "set", "append", "unset", "getn", 0 }; 1138462SApril.Chin@Sun.COM 1148462SApril.Chin@Sun.COM #ifdef SHOPT_STATS 1158462SApril.Chin@Sun.COM const Shtable_t shtab_stats[] = 1168462SApril.Chin@Sun.COM { 1178462SApril.Chin@Sun.COM "arg_cachehits", STAT_ARGHITS, 1188462SApril.Chin@Sun.COM "arg_expands", STAT_ARGEXPAND, 1198462SApril.Chin@Sun.COM "comsubs", STAT_COMSUB, 1208462SApril.Chin@Sun.COM "forks", STAT_FORKS, 1218462SApril.Chin@Sun.COM "funcalls", STAT_FUNCT, 1228462SApril.Chin@Sun.COM "globs", STAT_GLOBS, 1238462SApril.Chin@Sun.COM "linesread", STAT_READS, 1248462SApril.Chin@Sun.COM "nv_cachehit", STAT_NVHITS, 1258462SApril.Chin@Sun.COM "nv_opens", STAT_NVOPEN, 1268462SApril.Chin@Sun.COM "pathsearch", STAT_PATHS, 1278462SApril.Chin@Sun.COM "posixfuncall", STAT_SVFUNCT, 1288462SApril.Chin@Sun.COM "simplecmds", STAT_SCMDS, 1298462SApril.Chin@Sun.COM "spawns", STAT_SPAWN, 1308462SApril.Chin@Sun.COM "subshell", STAT_SUBSHELL 1318462SApril.Chin@Sun.COM }; 1328462SApril.Chin@Sun.COM #endif /* SHOPT_STATS */ 1338462SApril.Chin@Sun.COM 134