223 Commits

Author SHA1 Message Date
games647
0227cb3f74 Add IPv6 support for isLocal checks (#1592)
* Add IPv6 support for isLocal checks

* Replace magic values like 127.0.0.1 and use our utility
* Support for IPv6 local adresses in IPv6 only or dual stack environments
    * Loopback [::1]
    * Site-Local fc00::/7
    * Link-local fe80::/10

* Introduce extra method for loopback addresses

* Use public IP for passMaxLogin check

* Use non-local IP addresses in test after change in verification
2018-07-04 02:05:17 +02:00
ljacqu
ecaffbabfc Small cleanups / changes amassed over time
- Small javadoc fixes
- Simplifications
- Move logException method from StringUtils to ExceptionUtils
2018-04-22 12:45:34 +02:00
ljacqu
a1a909c01d #1531 Move spigot detection to BukkitService (#1534) 2018-03-19 23:08:48 +01:00
Gabriele C
3a690fd79a Change how we detect spigot #1531 2018-03-19 17:23:51 +01:00
games647
7ff5801cfe
Revert "Fix no auto login permission (Fixes #118)" Wrong repo
This reverts commit 6d60e72296abdb9b1897956d1e09c0ab1a25e436.
2018-03-15 20:43:50 +01:00
games647
6d60e72296
Fix no auto login permission (Fixes #118) 2018-03-15 20:42:50 +01:00
ljacqu
329657bd5f
#1497 Show specific message for invalid YAML files (#1506)
* #1497 Throw dedicated exception for invalid YAML files and handle it on startup
- Wrap SnakeYAML exceptions when loading config.yml and commands.yml on startup into own exception type
- Handle exception type on startup with specific error message

* #1497 Fix inaccurate JavaDoc comment
2018-02-23 23:31:22 +01:00
ljacqu
83e247afe9 Minor: Simplify check for Spigot 2018-02-17 23:23:44 +01:00
ljacqu
9dd4039fdd #1467 Create backup before migrating; output newly added message keys
- Extract logic for creating a backup timestamp into FileUtils
2018-02-13 22:15:03 +01:00
sgdc3
6a5f335e16 Implement #1483 2018-02-04 15:12:23 +01:00
Gabriele C
26a69297ce Disable the automatic poolSize option
it creates more issues than benefits
2017-12-13 23:13:28 +01:00
HexelDev
ba65633182 Email verification code (#1382)
* Base verification code implementation, must define command, manager, events
* VerificationManager, verification command and messages, handled some sensible commands, configuration values
* Improved manager and sensible commands trigger
* Updated messages
* Updated verification code manager, fixed tests
* Switched to a permission based command
* Verification manager and command improved and added tests
* Edited messages
2017-10-28 12:23:14 +02:00
ljacqu
4e8deec258 Move #isNpc method to PlayerUtils
- After dropping our hook to CombatTagPlus it is not relevant for it to be in PluginHooksService anymore
2017-10-21 12:08:23 +02:00
ljacqu
4ac980111d Add some tests, minor Checkstyle fixes 2017-07-16 13:00:55 +02:00
Gabriele C
cd4693eedf GeoIP: ignore local addresses 2017-07-07 20:41:10 +02:00
ljacqu
1f8307c8f6 Fix minor checkstyle issues
- Add JavaDoc where checkstyle expects it
- Fix line too long issues
- ...
2017-05-07 11:59:01 +02:00
ljacqu
b7c35cb3a7 Merge branch 'master' of https://github.com/AuthMe/AuthMeReloaded into explicit-getters-from-db 2017-04-29 08:19:30 +02:00
ljacqu
0e923b6a70 #1180 Create command for performing a backup 2017-04-23 20:23:40 +02:00
ljacqu
d0dbc14358 Minor - fix some small todo's 2017-04-23 11:02:43 +02:00
ljacqu
b0c05afaa7 Create util method to check if email is empty
- Create method to check if email is empty or the default AuthMe email (avoids repetition)
- Check that input email has '@' inside text (relates to #1105)
2017-04-18 21:24:33 +02:00
ljacqu
75f84945fc Misc code householding
- Checkstyle config: allow todo comments with issue number
- Create consistency tests across all classes, ensuring: unique class names, users of expiring collectors implement HasCleanup, non-private fields are only constants
- Fix tag replacement in PlayerListener for {DISPLAYNAME}
2017-03-26 13:20:40 +02:00
ljacqu
32a664ef59 Update checkstyle config and CodeClimate exclusions
- Add new checkstyle checks: require Javadoc on large private methods, default in switch, declaration order & others
- Update path exclusions in CodeClimate config to match newly renamed classes (e.g. PHPBB -> PhpBB)
  - Create consistency check testing that excluded paths exist as classes
- Fix some trivial violations
2017-03-23 10:34:28 +01:00
Gnat008
9d21eefc74 Merge branches 'master' and 'passwd_recovery_process' of https://github.com/AuthMe/AuthMeReloaded into passwd_recovery_process
# Conflicts:
#	docs/config.md
#	src/main/resources/messages/messages_bg.yml
#	src/main/resources/messages/messages_es.yml
#	src/main/resources/messages/messages_pt.yml
#	src/main/resources/messages/messages_zhcn.yml
2017-03-21 17:26:29 -04:00
ljacqu
1da74cb987 #1005 Improve restricted user feature (performance, error handling)
- Move check for restricted user into validation service
- Keep restrictions in a map by name for fast lookup, avoid splitting Strings on every call
- Gracefully handle case when entry does not have the expected ';' and log exception
2017-03-14 22:26:19 +01:00
ljacqu
10d8f00c92 Various minor changes
- AsynchronousLogin: call common permission methods through CommonService instead of PermissionsManager
- CommandManager: remove superfluous replacement of %p (handled by lazy tag replacer)
- Remove unused method in CommonService
- Create DebugSectionConsistencyTest
- SendMailSSL: Enable debug output if AuthMe log level is set to debug
- Add Utils#logAndSendMessage and replace existing, separate implementations
2017-03-12 14:04:39 +01:00
EbonJaguar
fa65b1af5e make TimedCounter#decrement(K) easier to read 2017-03-06 14:15:07 -05:00
EbonJaguar
7d4bfcd99d - Introduce /email code
- Add max tries for /email code
- Introduce a PasswordRecoveryService
2017-03-06 13:54:46 -05:00
ljacqu
8aa573b9ed Minor fixes as found by Checkstyle 2017-03-05 10:58:29 +01:00
ljacqu
c197a330f3 #1073 Add delay to email recovery command
- Add configurable cooldown period after sending an email for /email recovery
- Change ExpiringMap to remove expired entries (like ExpiringSet)
- Create method to translate durations via the messages file
2017-02-25 22:41:49 +01:00
ljacqu
72c5cfac68 Create Duration class and ExpiringSet#getExpiration (prep for #1073)
- Move expiring collections to util.expiring package
- Change ExpiringSet to remove expired entries during normal calls
2017-02-25 17:25:25 +01:00
ljacqu
4edb4e68c2 #1104 Whitelist sensitive commands also when used with "authme:" prefix 2017-02-21 22:51:45 +01:00
ljacqu
ee51bb3971 Minor cleanups
- Remove forgotten test assertion
- Make utils class final
- Change RandomString to use char array
2017-02-20 22:20:48 +01:00
ljacqu
ca708e23cd #949 Create ExpiringSet, integrate into SessionManager 2017-02-19 09:06:15 +01:00
ljacqu
152d1dc216 #949 Created TimedCounter + implement it in TempbanManager 2017-02-18 22:50:30 +01:00
ljacqu
ef1d006cdf #949 Create expiring map type + integrate it into recovery code service 2017-02-18 21:31:37 +01:00
ljacqu
5ad528d5d9 Fix Javadoc errors (as seen in Jenkins build) 2017-02-04 11:35:43 +01:00
ljacqu
89c70ff447 #1026 Add more tags for forced commands (lazily replaced) (#214)
* #1026 Add more tags for forced commands (lazily replaced)
- Extract lazy replacement of tags to its own class
- Implement wrapper to replace a String property within an object
  - Use wrapper in command manager and add new tags

* Make argument type generic in lazy tags util
2017-01-29 13:54:37 +01:00
ljacqu
367380265e #1015 Distinguish player-dependent tags from "simple" tags 2017-01-22 10:52:51 +01:00
ljacqu
811bdee128 #1015 Implement lazy replace of tags for welcome message
- Check which tags are used when loading the welcome message and only apply their replacements afterwards
- Moves AuthMe#replaceAllInfo to a more appropriate place
- Avoid fetching data again for each line
2017-01-22 10:52:51 +01:00
ljacqu
666e242212 Delete CollectionUtils (unused) 2017-01-21 14:47:18 +01:00
ljacqu
385f7d6b1d #1055 Remove multiple "please register" messages
Part 1:
- Use only one message entry for "Please register", that may have to be adapted to reflect the proper /register arguments
- Remove other message entries from code and from the messages files

Breaking change: reg_email_msg is also removed
2017-01-07 09:01:03 +01:00
ljacqu
0b4d7273f6 #427 Define registration type with two options - one configuring the 2nd argument
- Split sole setting to two: one defining the registration type, and one defining what the register command should take as second argument
- Contains ugly code that will be fixed with a later issue
2016-12-31 15:34:40 +01:00
ljacqu
7d65d2a7c4 Fix various code issues as detected by Sonar
Mostly minor changes:
- Add deprecated javadoc tag on deprecated members
- Reduce duplication (FlatFile, BackupService, ...)
- Make methods static
- Reduce size of anonymous classes
- Replace name with displayName in PermissionsSystemType (avoids confusing with Enum name())
- Tabs to spaces
- Merge if statements

Code from third-party sources (BCryptService, BinTools, PHPBB) not modified.
2016-11-22 18:20:55 +01:00
ljacqu
72853a382f Initialization cleanup: use provider classes for Settings and DataSource
- Separate provider methods from other tasks performed on startup
  - No longer requires BukkitService to be instantiated manually
- Merge MetricsManager and Initializer into OnStartUpTasks
2016-11-06 18:51:07 +01:00
ljacqu
46af922fba Minor refactoring for tool tasks
- Don't scan for translations on initialization in TranslationPageGenerator in order to speed up startup time of ToolsRunner
- Extract checking for null / empty array of File#listFiles into a separate method
- Move single method of RuntimeUtils into Utils class
2016-10-30 10:43:59 +01:00
ljacqu
755f3df33e #768 Create command for updating messages file 2016-10-10 22:36:14 +02:00
Gabriele C
700ab5f3e4 Cleanup 2016-10-09 23:46:07 +02:00
Gabriele C
58c42cf300 Package cleanup
- authme.cache to authme.data
- Rename PlayerData to LimboPlayer to match with LimboCache
- Move authme.converter to authme.datasource.converter
- Split output package into output and message
2016-10-05 21:10:40 +02:00
Gabriele C
f3cd193d47 Move RandomStringUtils 2016-10-04 19:16:06 +02:00
Gabriele C
42dbb27728 Service cleanup 2016-10-04 19:08:18 +02:00