3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-11-23 04:19:25 +01:00
Commit Graph

42 Commits

Author SHA1 Message Date
Shivaram Lingamneni
26fd3e69a8 fix #749 2020-03-16 13:48:14 -04:00
Shivaram Lingamneni
4391b1ba5a restrict ASCII mode to printable characters only 2019-12-22 09:57:49 -05:00
Shivaram Lingamneni
781bb6b051 more systematic bad-character check in permissive mode 2019-12-22 09:31:51 -05:00
Shivaram Lingamneni
2d4dbeba1c disallow some bad characters in foldPermissive 2019-12-22 09:19:28 -05:00
Shivaram Lingamneni
f9b5224ae0 have realSkeleton use cases.Fold as well 2019-12-18 12:26:09 -05:00
Shivaram Lingamneni
91d6888b7e fix #693 2019-12-18 12:26:09 -05:00
Shivaram Lingamneni
baa71ba2be remove unnecessary special-casing for ASCII 2019-10-23 02:18:45 -04:00
Shivaram Lingamneni
332f0d8d91 fix #644 2019-10-16 12:51:40 -04:00
Shivaram Lingamneni
938ce7e435 fix #331 2019-07-14 16:17:37 -04:00
Shivaram Lingamneni
24c46235a3 remove m -> rn skeleton mapping again 2019-06-24 06:23:10 -04:00
Shivaram Lingamneni
b075ea6eb9 use regular Skeleton instead of SkeletonTweaked
dan: "I probably wouldn't expect those mappings to cause much
trouble at all for legitimate users at the end of the day"

shivaram: [concurs]
2019-06-24 00:16:42 -04:00
Shivaram Lingamneni
6e9a31a574 use confusables.SkeletonTweaked to fix the test 2019-06-19 05:24:09 -04:00
Shivaram Lingamneni
be4d098945 fix an edge case in skeletonization
'm' skeletonizes to 'rn' (but is exempted by the isBoring check),
but the fullwidth 'm' does not skeletonize to anything. The root cause
of this is the (still unexplained) patchiness of the skeleton mapping
for fullwidth -> standard-width Latin characters; the fix is to perform
width mapping first, before either skeletonization or isBoring.
2019-06-18 02:34:16 -04:00
Daniel Oaks
8cd5db1194 Restrict idents as other servers do 2019-02-03 18:49:42 +10:00
Shivaram Lingamneni
c34d9e0b72 more lenient casefolding for skeletons 2019-02-03 02:45:02 -05:00
Shivaram Lingamneni
18c0c9da45 use our fork of mtibben/confusables for now 2019-01-30 22:02:14 -05:00
Shivaram Lingamneni
b9b2553a2f use the TR39 skeleton algorithm to prevent confusables (#178) 2019-01-30 21:48:53 -05:00
Shivaram Lingamneni
40e63dbbe8 fix #306
Fix spurious bidi rule violations in casefolding channel names
by stripping the # before starting the casefolding.
2018-12-05 22:39:01 -05:00
Daniel Oaks
2419f69879 Move all errors into errors.go 2018-02-03 22:03:36 +10:00
Daniel Oaks
197ab520bf Change casemapping name and advertisement to match new spec 2017-12-26 12:30:04 +10:00
Daniel Oaks
ac91a3e484 strings: Follow latest advice on PRECIS regarding string stabilizing 2017-09-06 14:38:55 +10:00
Euan Kemp
449ef4cea1 strings: disallow ':' in nicks
This matches the behavior of inspircd at the very least.

Previously, the comment above that section claimed ':' should be
disallowed, but the code didn't do so.

I also simplified the code a little bit and added tests.
2017-07-25 23:28:29 -07:00
Daniel Oaks
317a804644 Fix dates at top of source files 2017-03-27 22:15:02 +10:00
Daniel Oaks
ea0121aeff strings: Prevent crash 2017-01-22 12:44:05 +10:00
Daniel Oaks
2b240faa90 strings: Fix nick bugs, use UsernameCaseMapped 2017-01-14 02:32:15 +10:00
Daniel Oaks
c7fdb4656e strings: Use inbuilt precis.Nickname encoding now 2016-10-27 00:44:36 +10:00
Daniel Oaks
9ccd6037a6 strings: Make Nickname profile not actually case-sensitive 2016-10-14 00:25:37 +10:00
Daniel Oaks
5e72409695 Move from ascii(ish) unicode encoding to prelim rfc7700 using functions instead 2016-10-11 23:51:46 +10:00
Daniel Oaks
bc42960552 strings: Remove CTCP stuff, unused 2016-09-12 12:33:37 +10:00
Daniel Oaks
5a8e7709b2 strings: Disallow more broken nicknames 2016-08-13 20:53:23 +10:00
Daniel Oaks
1b67af7e85 strings: Also explicitly disallow . in nicknames 2016-08-12 23:38:19 +10:00
Daniel Oaks
9d853d5be7 strings: Don't allow nicks to start with dashes or 0-9 2016-08-12 23:33:44 +10:00
Daniel Oaks
a5911ad14c server: Add configurable NICKLEN and CHANNELLEN 2016-08-12 22:20:32 +10:00
Daniel Oaks
2f08401a0f Attempt to add mostly-correct license info at the top of each file... track this stuff a bit better 2016-06-15 21:50:56 +10:00
Daniel Oaks
fd6ed36995 strings: Restrict *? explicitly as they are used for mask matching 2016-06-15 17:41:53 +10:00
Daniel Oaks
77bf7173ff Require that server names must be hostnames, and nicks cannot be hostnames 2016-04-21 10:48:15 +10:00
Daniel Oaks
4a8d526c4d strings: Nicks and usernames can't contain ! or @ 2016-04-21 10:21:36 +10:00
Daniel Oaks
7ce62444de strings: Disallow nicknames that mess with the protocol in bad ways 2016-04-12 22:42:17 +10:00
Robin Burchell
6ad97f7e5d irc: Switch to golang.org versions, not google code versions of dependencies.
This has a few advantages:
* the google code versions are no longer maintained
* the google code versions are using mercurial (which I don't have installed)
2015-07-04 12:19:33 +02:00
Edmund Huber
2272aae213 spelling and gofmt 2014-03-23 06:50:07 +01:00
Edmund Huber
34b01b115e add a type for CTCP-encoded strings, and NOTICEs for error cases 2014-03-23 06:47:21 +01:00
Jeremy Latt
96a108f8da mark unicode normalization with type 2014-03-12 16:45:22 -07:00