summary refs log tree commit diff
AgeCommit message (Collapse)Author
2019-11-14Creates separate definition files for tcoin.cpp and pcoin.cpp~login@aussies.space
I realised that different tilde servers will have different definitions but the same code otherwise, and 'git push' and 'git pull' to update the code on other servers would override those definitions. Thus, the tcoin.cpp and pcoin.cpp files now look the same for all tildeservers and have a #include "tcoin_defs.cpp" and #include "pcoin_defs.cpp" respectively. The configuration, which is in the form of #define symbolic constants, is stored in tcoin/bin/tcoin_defs.cpp and tcoin/bin/pcoin_defs.cpp. ntcoin is modified to create these two files with the right definitions. ntcoin is also modified so that compile_tcoin and compile_pcoin now include the -I option, which instructs the compiler to look for includes in additional directories, in this case, tcoin/bin .
2019-11-13tildecoin-check file includedlogin (tilde.club)
tcc (which stands for 'tildecoin check'), simply adds all the balances and prints the sum. This can be used to check that the amounts sent and amounts received are equal.
2019-10-07Merge branch 'master' of https://github.com/login000/tcoin~login@aussies.space
2019-10-07Fixing a bug with how time is calculated for messages~login@aussies.space
Benjamin Harris (https://ben.tild3.org, https://github.com/benharri, and https://benharr.is) found a bug where the time recorded for transaction logs/messages was local server time instead of UTC. It should have been UTC no matter what the local time was.
2019-10-07Fixing preprocessor constants~login@aussies.space
To fix the preprocessor constants so that they point to the right directory for the tcoin and pcoin executables. This will be different depending on where the tcoin and pcoin executables are stored.
2019-10-03Bug fix to ntcoin~login@aussies.space
Previously, the executables 'tcoin' and 'pcoin', which had setuid set, were stored in tcoin/bin/*. However, the "tcoin" directory is restricted, so any executables inside it are inaccessible to users. To fix this, the compile_tcoin and compile_pcoin scripts have been modified to store the executables in a third specified directory, called the <bin dir> in the help. <bin dir> will be accessible to all users. The symbolic constants/preprocessor directives have also been changed to reflect the updated paths.
2019-10-03Bug fix to ntcoin~login@aussies.space
Previously, the executables 'tcoin' and 'pcoin', which had setuid set, were stored in tcoin/bin/*. However, the "tcoin" directory is restricted, so any executables inside it are inaccessible to users. To fix this, the compile_tcoin and compile_pcoin scripts have been modified to store the executables in a third specified directory, called the <bin dir> in the help. <bin dir> will be accessible to all users. The symbolic constants/preprocessor directives have also been changed to reflect the updated paths.
2019-10-03Default message when there are no messages.~login@aussies.space
A default message is now shown when there are no messages to show.
2019-09-30Added symbolic constants (flags) to remove integrations~login@aussies.space
Since not all places where tcoin runs have tildebot, minerbot and daily-adventure, these integrations are now disabled in the code through preprocessor directives (symbolic constants that act as flags)
2019-09-30Fixed preprocessor directives for pcoin.cpp and tcoin.cpp~login@aussies.space
pcoin.cpp and tcoin.cpp were missing the preprocessor directives generated by ntcoin. The right preprocessor directives are now included in both files.
2019-09-30Updated ntcoin to add more symbolic constants~login@aussies.space
I had missed two symbolic constants that are present in pcoin.cpp but not tcoin.cpp. Those two have been added now.
2019-09-30Bug fixes to ntcoin~login@aussies.space
1. Single quotes closed before command substitutions, and opened again right after them. (Some cases were missed previously.) 2. The u+s mode/permission is used on all subdirectories of the tcoin directory and the tcoin directory itself now, so that files created are owned by the owner of the containing directory by default. This will prevent the class of bugs that would arise when files are created through the tcoin executable (which has the setuid bit set). 3. A mistake in the file name and location of the base amount (tcoin/base/base.txt) was corrected.
2019-09-30Adding an option to view the #define configuration without creating any ↵~login@aussies.space
directories This option was added to allow the #define configuration to be reprinted even if ntcoin was already used to recreate tcoin's subdirectory structure.
2019-09-30Added symbolic constants to disable tildebot, minerbot and daily-adventure ↵~login@aussies.space
integrations Defining the symbolic constants NO_KROWBAR, NO_DA and NO_MINERCOIN disables the three coin integrations during compile time.
2019-09-30Adding chmod u+x to scripts (and scrypt)~login@aussies.space
2019-09-30Updated ntcoin to get rid of trailing slashlogin000
Uses "realpath" to get rid of all trailing slashes and check that each directory in the path supplied exist (other than the innermost directory).
2019-09-30Creates ntcoin to set up relevant directories, scripts, and binaries for ↵login000
tcoin and pcoin 1. Sets up all relevant directories, scripts and binaries for tcoin and pcoin, assuming the current directory is right inside the GitHub repo (same depth as the LICENSE file). 2. Creates soft-links to the executables in "bin" folder inside the "tcoin" folder in the "~/bin" folder. 3. Prints the relevant preprocessor directives to be put in tcoin.cpp and pcoin.cpp (without actually putting it in those two files). Because of 3. above, the tcoin.cpp and pcoin.cpp files will have to be modified again, after which "compile_tcoin" and "compile_pcoin" can be called again to update the binaries.
2019-09-30npcoin modified to use current directorylogin000
npcoin gets new pcoin accounts ready. The relevant paths were hardcoded earlier, but now assume the "tcoin" directory is in the current directory.
2019-09-24Updating the successful login messagelogin000
Updating the successful login message to add additional information about running `tcoin` to check one's balance and messages. This is intended to make it easy for new users to know what to do once they've done "tcoin on".
2019-09-24Stylistic update to "Last <n> messages"login000
When there are fewer than <n> messages in total, and one runs "tcoin -m <n>", an extra newline was shown between "Last <n> messages:" and the actual messages. This commit fixes that by checking if the first character in the actual messages is a newline and putting one more newline only if it isn't (instead of always).
2019-07-15Removed redundant code in pcoin.cpplogin000
pcoin.cpp had redundant code in 'int main()', where user_amount was redeclared (and thus became a local variable that shadowed the global version inside 'int main()' (!). Fixed by removing the redeclared, redundant line.
2019-07-15Fixed bug in "tcoin init" and "tcoin"login000
Fixed bug in "tcoin init" and "tcoin" when an uninitialised user runs them. Previously, it used to display the following error: Error! Could not open file at <file_path>! Assuming its internal content is "0\n" because 'user_amount' in 'int main()' was read from the file before checking if the user had initialised.
2019-06-25Added #define DEBUG, fixed pcoin error messagelogin000
Added #define DEBUG and put a few check statements under it. Fixed error message in pcoin that suggested the incorrect "add_internal_balance" amount when "internal_balance" owed to a particular user was not enough (and was lesser than the number of tildecoins being sent using the "send" command to said user). Also, fixed an error in retrieving the amount owed to a particular user when doing checks during the "send" command ("temp_program_sender_username" instead of "program_sender_username").
2019-06-22Fixed std:;strcpy to std::strcpylogin000
credit to eigenellies/diodelasses and npa
2019-04-18Fixing daily-adventure integration in pcoin.cpplogin000
daily-adventure changed how it stores state, so this new code fixes daily-adventure integration to the new format that daily-adventure stores state in.
2019-04-18Fix daily-adventure integration in tcoin.cpplogin000
daily-adventure changed how it stores state, so this new code fixes daily-adventure integration to the new format that daily-adventure stores state in.
2019-03-10bash script to create new program accountslogin000
bash script creates directory structure for new program accounts
2019-03-10Copied pcoin.cpp from tilde.townlogin000
2019-03-10Updated tcoin.cpp to latest versionlogin000
2018-03-06Create README.mdlogin000
2018-03-06Initial Commitlogin000
2018-03-06Create LICENSElogin000