King_DuckZ
009341233d
Use karma to make mime strings from structs.
2017-05-31 19:53:46 +01:00
King_DuckZ
4ff6719077
Fix bug in the mime parser.
...
The token rule was matching even when the quoted_string
rule should have matched, which was preventing the "
stripping to work. In fact quoted_string was never being
used.
Also improve formatting of long lines.
2017-05-25 19:09:11 +01:00
King_DuckZ
5d4041aed8
Minor style change.
2017-05-25 00:51:39 +01:00
King_DuckZ
ea55602f6b
Implement mime_split.
...
It will be used to detect received content types.
2017-05-25 00:51:26 +01:00
King_DuckZ
4e32006e08
Don't respond if the request method is unexpected.
...
This includes the jolly responder, which now only works
for GET requests.
2017-05-24 19:09:42 +01:00
King_DuckZ
9fff9d793c
Move ip requesting code into a separate file and make hashing configurable at build time.
...
New code tries to guess a per-visitor IP address and uses
that (or its hash) to tell users apart.
This patch also adds a TAWASHI_WITH_IP_LOGGING cmake option
to enable or disable logging the IP address of your visitors
in various places (just one right now but don't assume things
to remain this way).
Also added a couple new CGI environment variables.
2017-05-24 09:34:52 +01:00
King_DuckZ
1507c79503
Clean up and make a separate class for pasties from curl-style requests.
2017-05-24 09:05:03 +01:00
King_DuckZ
53b5a1a2af
Hack to quickly get a new pastie's address when invoked from curl.
2017-05-23 20:34:46 +01:00
King_DuckZ
847988f4bd
No need to prepare mustache context if no body is required.
2017-05-23 20:24:56 +01:00
King_DuckZ
7549c0e664
Don't crash when a pastie doesn't exist, redirect to error page instead.
2017-05-23 20:15:41 +01:00
King_DuckZ
8b94672b25
Register a separate maker for requests to "" POST.
2017-05-23 19:59:49 +01:00
King_DuckZ
27881ed0f0
Allow registering makers specific to POST or GET requests.
2017-05-23 19:59:49 +01:00
King_DuckZ
014f18ec57
Simplify prefix len calculation and make it more flexible.
...
The prefix in tawashi.ini now can omit the trailing /.
If missing, it will still be trimmed from PATH_INFO if
necessary.
2017-05-23 19:59:49 +01:00
King_DuckZ
2571e70093
Allow to give the css file for the highlighter in tawashi.ini
2017-05-23 18:31:55 +01:00
King_DuckZ
7ada0f155b
Make non-highlighted pasties white so they are readable.
...
Also disable line number generation as I plan to add them
in a different way later on.
2017-05-23 09:24:11 +01:00
King_DuckZ
7115e9eb63
Use a light colours style for highlighted pasties.
2017-05-23 09:14:33 +01:00
King_DuckZ
54d50cf6bc
Basic check to tell if a string looks like a possibly valid number.
2017-05-22 21:04:26 +01:00
King_DuckZ
51810fa2f2
Always remove the trailing slash from computed URI.
2017-05-22 20:32:20 +01:00
King_DuckZ
6ea74d090a
Set plain text mode *before* returning.
2017-05-22 20:28:18 +01:00
King_DuckZ
e2437a6b12
Add more logging and error checking.
2017-05-22 09:27:17 +01:00
King_DuckZ
d3319512f4
Case-insensitive check for HTTPS=on.
2017-05-19 19:48:31 +01:00
King_DuckZ
58c3f5c224
Log an error if host_path looks wrong.
2017-05-19 19:14:07 +01:00
King_DuckZ
e84e968ff6
Remove unused property.
2017-05-19 10:01:36 +01:00
King_DuckZ
34daf8e411
Decompose the base_uri option.
...
This allows support for having tawashi in a subdirectory
of your domain, eg http://example.com/tawashi
2017-05-19 10:01:22 +01:00
King_DuckZ
810c321515
Redirects always use 3xx status codes.
2017-05-18 22:38:09 +01:00
King_DuckZ
c6955cd8b9
Heineus bug fixed.
2017-05-18 20:19:50 +01:00
King_DuckZ
2e4d869370
Individually log failure for non-vital missing POST variables.
2017-05-18 19:17:22 +01:00
King_DuckZ
71ec9925f4
Fix sent http status codes.
2017-05-18 19:17:22 +01:00
King_DuckZ
aaa28d3454
Assign the actual numbers to the HTTP status codes enum.
...
This allows me to get rid of a good deal of crap.
2017-05-18 19:17:22 +01:00
King_DuckZ
4eb4261f4a
This makes it quick to just delete the copy constructor.
...
Useful if you want to see where copy is done instead of move.
2017-05-18 19:17:22 +01:00
King_DuckZ
cdd23d35d0
Make on_process() return an HttpHeader.
...
Response type is now decided by on_process' return value.
2017-05-18 19:17:22 +01:00
King_DuckZ
c5f2bc055a
Append the protocol to the uri from the code.
...
This means if you set uri name to http://example.com in the
config file you will actually get base_uri to be
http://http://example.com .
2017-05-18 19:17:22 +01:00
King_DuckZ
59a5d35ee0
Try to fix redirect not working properly.
2017-05-17 00:03:43 +01:00
King_DuckZ
5a4794240b
Disable colouring when lang token is "colorless".
2017-05-16 23:07:00 +01:00
King_DuckZ
aa9e1f884f
Rename text html page to pastie and get rid of paste.
...
So confusing! :s
2017-05-16 23:01:19 +01:00
King_DuckZ
85f6781d81
Fix tawashi sending back an html response even for redirects.
2017-05-16 22:58:09 +01:00
King_DuckZ
f19d78222f
Clarify log entry
2017-05-16 22:16:33 +01:00
King_DuckZ
a1fa8cc1d2
Bugfix, don't redirect when the returned token is empty.
2017-05-16 22:06:36 +01:00
King_DuckZ
e77b9dafbb
Log when redirecting to the error page.
2017-05-16 21:52:48 +01:00
King_DuckZ
8345c300a8
Add some debug logging and change level to trace.
2017-05-16 19:14:22 +01:00
King_DuckZ
ed4a02f4bb
Setup the logger based on the log_file setting in tawashi.ini.
...
With this change I had to swap the order in which what settings
file as being loaded and the initialization of the logger itself.
This is because the logger now depends on the settings file,
so it can't be used before the setting file got parsed.
2017-05-16 19:11:09 +01:00
King_DuckZ
10da16051c
Organize exceptions so it's easy to log errors locally.
2017-05-16 18:54:00 +01:00
King_DuckZ
32eadfc64d
Pull some code out from main().
2017-05-16 18:52:34 +01:00
King_DuckZ
75bd68c53e
More logging
2017-05-15 23:47:01 +01:00
King_DuckZ
34c23659e9
Log files that mustache is trying to open as info.
2017-05-15 23:45:13 +01:00
King_DuckZ
0c7d08e299
Use a smaller type for string lengths.
2017-05-15 23:41:47 +01:00
King_DuckZ
8585e5baf5
Calculate string lengths at build time.
2017-05-15 23:38:39 +01:00
King_DuckZ
00f32d43d3
Fix displaying error messages in error response.
2017-05-15 21:46:35 +01:00
King_DuckZ
ba1b417f07
Fix wrong parameter in redirect address.
2017-05-15 09:33:31 +01:00
King_DuckZ
9b28b2d274
Add a --show-paths switch to print hardcoded paths and info.
2017-05-15 09:26:29 +01:00