Shivaram Lingamneni
26fd3e69a8
fix #749
il y a 4 ans
Shivaram Lingamneni
4391b1ba5a
restrict ASCII mode to printable characters only
il y a 4 ans
Shivaram Lingamneni
781bb6b051
more systematic bad-character check in permissive mode
il y a 4 ans
Shivaram Lingamneni
2d4dbeba1c
disallow some bad characters in foldPermissive
il y a 4 ans
Shivaram Lingamneni
f9b5224ae0
have realSkeleton use cases.Fold as well
il y a 4 ans
Shivaram Lingamneni
91d6888b7e
fix #693
il y a 4 ans
Shivaram Lingamneni
baa71ba2be
remove unnecessary special-casing for ASCII
il y a 4 ans
Shivaram Lingamneni
332f0d8d91
fix #644
il y a 4 ans
Shivaram Lingamneni
938ce7e435
fix #331
il y a 5 ans
Shivaram Lingamneni
24c46235a3
remove m -> rn skeleton mapping again
il y a 5 ans
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]
il y a 5 ans
Shivaram Lingamneni
6e9a31a574
use confusables.SkeletonTweaked to fix the test
il y a 5 ans
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.
il y a 5 ans
Daniel Oaks
8cd5db1194
Restrict idents as other servers do
il y a 5 ans
Shivaram Lingamneni
c34d9e0b72
more lenient casefolding for skeletons
il y a 5 ans
Shivaram Lingamneni
18c0c9da45
use our fork of mtibben/confusables for now
il y a 5 ans
Shivaram Lingamneni
b9b2553a2f
use the TR39 skeleton algorithm to prevent confusables (#178)
il y a 5 ans
Shivaram Lingamneni
40e63dbbe8
fix #306
Fix spurious bidi rule violations in casefolding channel names
by stripping the # before starting the casefolding.
il y a 5 ans
Daniel Oaks
2419f69879
Move all errors into errors.go
il y a 6 ans
Daniel Oaks
197ab520bf
Change casemapping name and advertisement to match new spec
il y a 6 ans
Daniel Oaks
ac91a3e484
strings: Follow latest advice on PRECIS regarding string stabilizing
il y a 6 ans
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.
il y a 7 ans
Daniel Oaks
317a804644
Fix dates at top of source files
il y a 7 ans
Daniel Oaks
ea0121aeff
strings: Prevent crash
il y a 7 ans
Daniel Oaks
2b240faa90
strings: Fix nick bugs, use UsernameCaseMapped
il y a 7 ans
Daniel Oaks
c7fdb4656e
strings: Use inbuilt precis.Nickname encoding now
il y a 7 ans
Daniel Oaks
9ccd6037a6
strings: Make Nickname profile not actually case-sensitive
il y a 7 ans
Daniel Oaks
5e72409695
Move from ascii(ish) unicode encoding to prelim rfc7700 using functions instead
il y a 7 ans
Daniel Oaks
bc42960552
strings: Remove CTCP stuff, unused
il y a 7 ans
Daniel Oaks
5a8e7709b2
strings: Disallow more broken nicknames
il y a 8 ans
Daniel Oaks
1b67af7e85
strings: Also explicitly disallow . in nicknames
il y a 8 ans
Daniel Oaks
9d853d5be7
strings: Don't allow nicks to start with dashes or 0-9
il y a 8 ans
Daniel Oaks
a5911ad14c
server: Add configurable NICKLEN and CHANNELLEN
il y a 8 ans
Daniel Oaks
2f08401a0f
Attempt to add mostly-correct license info at the top of each file... track this stuff a bit better
il y a 8 ans
Daniel Oaks
fd6ed36995
strings: Restrict *? explicitly as they are used for mask matching
il y a 8 ans
Daniel Oaks
77bf7173ff
Require that server names must be hostnames, and nicks cannot be hostnames
il y a 8 ans
Daniel Oaks
4a8d526c4d
strings: Nicks and usernames can't contain ! or @
il y a 8 ans
Daniel Oaks
7ce62444de
strings: Disallow nicknames that mess with the protocol in bad ways
il y a 8 ans
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)
il y a 9 ans
Edmund Huber
2272aae213
spelling and gofmt
il y a 10 ans
Edmund Huber
34b01b115e
add a type for CTCP-encoded strings, and NOTICEs for error cases
il y a 10 ans
Jeremy Latt
96a108f8da
mark unicode normalization with type
il y a 10 ans