Overview
Comment: | Converted global variables to not be part of a struct |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | tcl-ops |
Files: | files | file ages | folders |
SHA1: |
f277407cbc75e377b0f8e19b48d981f1 |
User & Date: | rkeene on 2014-11-07 07:20:36 |
Other Links: | branch diff | manifest | tags |
Context
2014-11-07
| ||
08:48 | Added basic "getchildren" implementation in Tcl check-in: ee13ee5aa4 user: rkeene tags: tcl-ops | |
07:20 | Converted global variables to not be part of a struct check-in: f277407cbc user: rkeene tags: tcl-ops | |
07:17 | Updated Makefile check-in: a6cb122222 user: rkeene tags: tcl-ops | |
Changes
Modified appfsd.c from [2188b35dbc] to [a9240a597b].
︙ | ︙ | |||
34 35 36 37 38 39 40 | /* * Thread Specific Data (TSD) for Tcl Interpreter for the current thread */ static pthread_key_t interpKey; /* | | > < | | < < < < < < < | 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | /* * Thread Specific Data (TSD) for Tcl Interpreter for the current thread */ static pthread_key_t interpKey; /* * Global variables, needed for all threads but only initialized before any * FUSE threads are created */ const char *appfs_cachedir; time_t appfs_boottime; /* * AppFS Path Type: Describes the type of path a given file is */ typedef enum { APPFS_PATHTYPE_INVALID, APPFS_PATHTYPE_FILE, |
︙ | ︙ | |||
96 97 98 99 100 101 102 | }; /* * Create a new Tcl interpreter and completely initialize it */ static Tcl_Interp *appfs_create_TclInterp(void) { Tcl_Interp *interp; | < | 89 90 91 92 93 94 95 96 97 98 99 100 101 102 | }; /* * Create a new Tcl interpreter and completely initialize it */ static Tcl_Interp *appfs_create_TclInterp(void) { Tcl_Interp *interp; int tcl_ret; APPFS_DEBUG("Creating new Tcl interpreter for TID = 0x%llx", (unsigned long long) pthread_self()); interp = Tcl_CreateInterp(); if (interp == NULL) { fprintf(stderr, "Unable to create Tcl Interpreter. Aborting.\n"); |
︙ | ︙ | |||
158 159 160 161 162 163 164 | return(NULL); } /* * Set global variables from C to Tcl */ | | | 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 | return(NULL); } /* * Set global variables from C to Tcl */ if (Tcl_SetVar(interp, "::appfs::cachedir", appfs_cachedir, TCL_GLOBAL_ONLY) == NULL) { fprintf(stderr, "Unable to set cache directory. This should never fail.\n"); Tcl_DeleteInterp(interp); return(NULL); } |
︙ | ︙ | |||
531 532 533 534 535 536 537 | case APPFS_PATHTYPE_INVALID: res = -EIO; break; } if (pathinfo.packaged) { | | | 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 | case APPFS_PATHTYPE_INVALID: res = -EIO; break; } if (pathinfo.packaged) { if (0) { stbuf->st_mode |= 0222; } } return res; } |
︙ | ︙ | |||
732 733 734 735 736 737 738 | */ static int appfs_fuse_opt_cb(void *data, const char *arg, int key, struct fuse_args *outargs) { static seen_cachedir = 0; if (key == FUSE_OPT_KEY_NONOPT && seen_cachedir == 0) { seen_cachedir = 1; | | | 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 | */ static int appfs_fuse_opt_cb(void *data, const char *arg, int key, struct fuse_args *outargs) { static seen_cachedir = 0; if (key == FUSE_OPT_KEY_NONOPT && seen_cachedir == 0) { seen_cachedir = 1; appfs_cachedir = strdup(arg); return(0); } return(1); } |
︙ | ︙ | |||
759 760 761 762 763 764 765 | } argc--; argv++; /* * Set global variables, these should be configuration options. */ | | < | | 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 | } argc--; argv++; /* * Set global variables, these should be configuration options. */ appfs_cachedir = APPFS_CACHEDIR; /* * Set global variable for "boot time" to set a time on directories * that we fake. */ appfs_boottime = time(NULL); /* * Register "sha1" and "appfsd" package with libtcl so that any new * interpreters created (which are done dynamically by FUSE) can have * the appropriate configuration done automatically. */ Tcl_StaticPackage(NULL, "sha1", Sha1_Init, NULL); |
︙ | ︙ | |||
795 796 797 798 799 800 801 | /* * Manually specify cache directory, without FUSE callback * This option only works when not using FUSE, since we * do not process it with FUSEs option processing. */ if (argc >= 2) { if (strcmp(argv[0], "--cachedir") == 0) { | | | 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 | /* * Manually specify cache directory, without FUSE callback * This option only works when not using FUSE, since we * do not process it with FUSEs option processing. */ if (argc >= 2) { if (strcmp(argv[0], "--cachedir") == 0) { appfs_cachedir = strdup(argv[1]); argc -= 2; argv += 2; } } /* |
︙ | ︙ |