1
0
Fork 0
mirror of https://github.com/KingDuckZ/kamokan.git synced 2024-12-27 21:35:41 +00:00
Commit graph

215 commits

Author SHA1 Message Date
44350478c1 Version bump to 0.2.3 2017-06-09 00:19:33 +01:00
43e97ee79b Fix data corruption when submitting a pastie. 2017-06-08 23:38:11 +01:00
f3868e5b3f For some reason the incredis test was still enabled on this machine. 2017-06-08 22:56:35 +01:00
f6da79a49d Add an option to ignore pastie tokens that are too long.
0 disables the limit.
2017-06-08 22:02:11 +01:00
96a349bb8d Drop ?blabla before calling factory.make_response().
This fixes the problem with error.cgi?reason=... being
mistaken for a pastie.
2017-06-08 21:57:09 +01:00
5f0ea56241 Log raw pastie from POST and pastie before going to redis.
This is to hopefully track down the pastie corruption
bug that I'm only encountering on the outgoing server.
2017-06-08 21:33:18 +01:00
b5b0db8b8d Implement truncated_string().
It will either return the full string if its length was
maxlen or less, or up to maxlen characters with
a "..." appended at the end. It will also replace any
\n or \r character with a literal "\n" or "\r"
respectively. Only line breaks are being replaced, and
this happens inside truncated_string() because truncating
only makes sense to me if you want to use it to
keep stuff short and in one single line.
2017-06-08 21:32:04 +01:00
5b88afb276 Reject pastie tokens that are not in the a-z range. 2017-06-08 10:15:51 +01:00
c3609e1768 Add an array of lines and line numbers to the mustache context. 2017-06-07 21:52:55 +01:00
a56014bed8 Fix wrong code that wasn't splitting on ? correctly 2017-06-07 09:38:05 +01:00
8795977da9 Extract pastie's token manually from the request uri. 2017-06-07 00:49:44 +01:00
108a8c8e06 Use string_view directly with mstch. 2017-06-07 00:40:03 +01:00
056e7dcde4 Use stock std::string conversion. 2017-06-07 00:30:43 +01:00
eaf8c0778d Replace string_ref with string_view in test. 2017-06-07 00:18:52 +01:00
befbed413a Delete unused file. 2017-06-06 23:04:52 +01:00
6e19745d69 Replace string_ref with string_view 2017-06-06 23:04:40 +01:00
df1afc7616 Fix the bug with the pastie token being invalid.
REQUEST_URI would return "ba"?cpp for example, but
the code expects just "ba".
2017-06-06 19:55:22 +01:00
e44611301c Fix the problem with redis not being initialized anymore. 2017-06-06 19:40:52 +01:00
60bc194848 Add missing include 2017-06-06 09:44:36 +01:00
b0c62fcab3 Add HTTP/1.1 to Status in cgi responses. 2017-06-06 00:56:28 +01:00
f94cc9409b Add test for SubmitPasteResponse. 2017-06-06 00:56:01 +01:00
974424398f Remove hardcoded path to my own machine. 2017-06-05 23:57:47 +01:00
4ba3b679fc Read POST in the Response so I can override it for testing. 2017-06-05 23:56:59 +01:00
fb27563fdd Make functions virtual when building with testing. 2017-06-05 23:02:39 +01:00
c302dbee73 Hide calls to Incredis in the Storage class.
This should allow me to write some decent
simulation tests.
2017-06-05 21:57:14 +01:00
99e52ceb75 More logging, try to fix the 502 gateway error. 2017-06-05 19:53:32 +01:00
640315cbba Another attempt at fixing the 502 Gateway error. 2017-06-05 09:20:37 +01:00
26d8b553d7 Version bump to 0.2.2. 2017-06-04 23:06:27 +01:00
78156cea75 Off by 1? 2017-06-04 23:05:56 +01:00
87b6f85913 Version bump to 0.2.1. 2017-06-04 22:14:50 +01:00
1a7ec9c2c4 Use REQUEST_URI instead of PATH_INFO. 2017-06-04 22:14:05 +01:00
2293604e11 Fix tests' build. 2017-06-03 21:16:23 +01:00
defc365d21 Update link to renamed github page 2017-06-03 21:03:09 +01:00
cb2d163981 ...rename duckbin to kamokan --> 鴨缶. yay! 2017-06-03 20:52:57 +01:00
ae283b6c96 Version bump to 0.2.0 2017-06-02 22:15:41 +01:00
2338ecbdb5 Rename tawashi to duckbin in the html. 2017-06-02 21:58:23 +01:00
9cda58d0c0 Rename tawashi to duckbin.
The library that used to be "tawashi_implem" now
is simply called tawashi.
2017-06-02 21:53:27 +01:00
2f00014758 Fail if CONTENT_TYPE is not application/x-www-form-urlencoded.
As part of the partial improvement to the POST reading
code I also added a max_post_size setting which defaults
to 1 MiB. POST inputs longer than that size get truncated.
This is separate to max_pastie_size, which is just the
size of one of the values in the POST data.
2017-06-02 09:23:35 +01:00
24baf67a65 Use the new SplitMime in the HttpHeader.
Something like the old m_param string is still needed
because Location responses need to send an URL.
The type of the response now determines if m_mime
or m_redirect_location is used.
2017-06-01 09:09:21 +01:00
5640cb5769 Remove debug text that was breaking the http response.
Also check if there are tabs in the mime parameter.
2017-06-01 09:06:10 +01:00
22a4503e0e Merge branch 'mime_karma' 2017-05-31 19:54:47 +01:00
009341233d Use karma to make mime strings from structs. 2017-05-31 19:53:46 +01:00
84470cfc57 Add a host_path token to mustache.
It expands to the host_path setting in the ini file, with
the last slash removed if present. Use it to make absolute
links like {{host_path}}/tawashi.css.
2017-05-28 17:06:14 +01:00
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
5d4041aed8 Minor style change. 2017-05-25 00:51:39 +01:00
ea55602f6b Implement mime_split.
It will be used to detect received content types.
2017-05-25 00:51:26 +01:00
eef10a3d5e REQUEST_METHOD must be given or better_enums will complain. 2017-05-24 22:26:55 +01:00
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
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
1507c79503 Clean up and make a separate class for pasties from curl-style requests. 2017-05-24 09:05:03 +01:00