diff options
author | onefang | 2020-03-19 21:56:55 +1000 |
---|---|---|
committer | onefang | 2020-03-19 21:56:55 +1000 |
commit | 940b72cbf9da09efcb9623bc70be6a4323a87729 (patch) | |
tree | 11787385d580c20bf65e20ea11ff9dc1e473a65e /src/sledjchisl | |
parent | Plug a lot of leaks. (diff) | |
download | opensim-SC_OLD-940b72cbf9da09efcb9623bc70be6a4323a87729.zip opensim-SC_OLD-940b72cbf9da09efcb9623bc70be6a4323a87729.tar.gz opensim-SC_OLD-940b72cbf9da09efcb9623bc70be6a4323a87729.tar.bz2 opensim-SC_OLD-940b72cbf9da09efcb9623bc70be6a4323a87729.tar.xz |
TODO++
Diffstat (limited to '')
-rw-r--r-- | src/sledjchisl/sledjchisl.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/sledjchisl/sledjchisl.c b/src/sledjchisl/sledjchisl.c index 11b5fb2..8dfbb94 100644 --- a/src/sledjchisl/sledjchisl.c +++ b/src/sledjchisl/sledjchisl.c | |||
@@ -4175,6 +4175,7 @@ void accountCreationPage(reqData *Rd, char *message) | |||
4175 | // TODO - check against the limit for in world profiles, coz this will become that. | 4175 | // TODO - check against the limit for in world profiles, coz this will become that. |
4176 | // TODO - validate aboutMe, it should not be empty, and should not be longer than 64 kilobytes. | 4176 | // TODO - validate aboutMe, it should not be empty, and should not be longer than 64 kilobytes. |
4177 | HTMLtextArea(Rd->reply, "aboutMe", "About me", 7, 50, 4, 16384, "Describe yourself here.", "off", "true", "soft", getStrH(Rd->body, "aboutMe"), FALSE); | 4177 | HTMLtextArea(Rd->reply, "aboutMe", "About me", 7, 50, 4, 16384, "Describe yourself here.", "off", "true", "soft", getStrH(Rd->body, "aboutMe"), FALSE); |
4178 | // TODO - upload an icon / profile picture. | ||
4178 | Rd->reply->addstrf(Rd->reply, "<input type='submit' disabled style='display: none' aria-hidden='true' />\n"); // Stop Enter key on text fields triggering the first submit button. | 4179 | Rd->reply->addstrf(Rd->reply, "<input type='submit' disabled style='display: none' aria-hidden='true' />\n"); // Stop Enter key on text fields triggering the first submit button. |
4179 | HTMLbutton(Rd->reply, "confirm"); | 4180 | HTMLbutton(Rd->reply, "confirm"); |
4180 | HTMLbutton(Rd->reply, "cancel"); | 4181 | HTMLbutton(Rd->reply, "cancel"); |
@@ -4683,11 +4684,13 @@ jit library is loaded or the JIT compiler will not be activated. | |||
4683 | char *d; | 4684 | char *d; |
4684 | 4685 | ||
4685 | // Doing this here coz at this point we should be the correct user. | 4686 | // Doing this here coz at this point we should be the correct user. |
4687 | // TODO - things like sticky bits. | ||
4686 | if ((! qfile_exist(scBin)) && (! qfile_mkdir(scBin, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scBin); | 4688 | if ((! qfile_exist(scBin)) && (! qfile_mkdir(scBin, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scBin); |
4687 | if ((! qfile_exist(scEtc)) && (! qfile_mkdir(scEtc, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scEtc); | 4689 | if ((! qfile_exist(scEtc)) && (! qfile_mkdir(scEtc, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scEtc); |
4688 | if ((! qfile_exist(scLib)) && (! qfile_mkdir(scLib, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scLib); | 4690 | if ((! qfile_exist(scLib)) && (! qfile_mkdir(scLib, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scLib); |
4689 | if ((! qfile_exist(scRun)) && (! qfile_mkdir(scRun, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP, true))) C("Unable to create path %s", scRun); | 4691 | if ((! qfile_exist(scRun)) && (! qfile_mkdir(scRun, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IWGRP | S_IXGRP, true))) C("Unable to create path %s", scRun); |
4690 | if ((! qfile_exist(scBackup)) && (! qfile_mkdir(scBackup, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scBackup); | 4692 | if ((! qfile_exist(scBackup)) && (! qfile_mkdir(scBackup, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scBackup); |
4693 | // TODO - the path to scCache/sledjchisl.socket needs to be readable by the www-data group. | ||
4691 | if ((! qfile_exist(scCache)) && (! qfile_mkdir(scCache, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scCache); | 4694 | if ((! qfile_exist(scCache)) && (! qfile_mkdir(scCache, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scCache); |
4692 | if ((! qfile_exist(scData)) && (! qfile_mkdir(scData, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scData); | 4695 | if ((! qfile_exist(scData)) && (! qfile_mkdir(scData, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scData); |
4693 | if ((! qfile_exist(scLog)) && (! qfile_mkdir(scLog, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scLog); | 4696 | if ((! qfile_exist(scLog)) && (! qfile_mkdir(scLog, S_IRUSR | S_IWUSR | S_IXUSR | S_IRGRP | S_IXGRP, true))) C("Unable to create path %s", scLog); |
@@ -5153,6 +5156,7 @@ fcgiDone: | |||
5153 | if (0 != WEXITSTATUS(i)) // No such sesion, create it. | 5156 | if (0 != WEXITSTATUS(i)) // No such sesion, create it. |
5154 | { | 5157 | { |
5155 | memset(toybuf, 0, sizeof(toybuf)); | 5158 | memset(toybuf, 0, sizeof(toybuf)); |
5159 | // TODO - do the sticky bit thing when we create that directory. | ||
5156 | // The sudo is only so that the session is owned by opensim, otherwise it's owned by whoever ran this script, which is a likely security hole. | 5160 | // The sudo is only so that the session is owned by opensim, otherwise it's owned by whoever ran this script, which is a likely security hole. |
5157 | // After the session is created, we rely on the caches directory to be group sticky, so that anyone in the opensim group can attach to the tmux socket. | 5161 | // After the session is created, we rely on the caches directory to be group sticky, so that anyone in the opensim group can attach to the tmux socket. |
5158 | snprintf(toybuf, sizeof(toybuf), | 5162 | snprintf(toybuf, sizeof(toybuf), |