2018-02-03 13:03:36 +01:00
|
|
|
// Copyright (c) 2012-2014 Jeremy Latt
|
|
|
|
// Copyright (c) 2014-2015 Edmund Huber
|
|
|
|
// Copyright (c) 2016-2017 Daniel Oaks <daniel@danieloaks.net>
|
|
|
|
// released under the MIT license
|
|
|
|
|
|
|
|
package irc
|
|
|
|
|
|
|
|
import "errors"
|
|
|
|
|
|
|
|
// Runtime Errors
|
|
|
|
var (
|
2018-02-20 10:20:30 +01:00
|
|
|
errAccountAlreadyRegistered = errors.New("Account already exists")
|
2018-04-01 09:12:41 +02:00
|
|
|
errAccountAlreadyVerified = errors.New("Account is already verified")
|
|
|
|
errAccountCantDropPrimaryNick = errors.New("Can't unreserve primary nickname")
|
2018-02-20 10:20:30 +01:00
|
|
|
errAccountCreation = errors.New("Account could not be created")
|
2018-04-01 09:12:41 +02:00
|
|
|
errAccountCredUpdate = errors.New("Could not update password hash to new method")
|
2018-02-20 10:20:30 +01:00
|
|
|
errAccountDoesNotExist = errors.New("Account does not exist")
|
2018-04-01 09:12:41 +02:00
|
|
|
errAccountInvalidCredentials = errors.New("Invalid account credentials")
|
|
|
|
errAccountNickReservationFailed = errors.New("Could not (un)reserve nick")
|
2018-03-02 23:04:24 +01:00
|
|
|
errAccountNotLoggedIn = errors.New("You're not logged into an account")
|
2018-04-01 09:12:41 +02:00
|
|
|
errAccountTooManyNicks = errors.New("Account has too many reserved nicks")
|
|
|
|
errAccountUnverified = errors.New("Account is not yet verified")
|
2018-02-20 10:20:30 +01:00
|
|
|
errAccountVerificationFailed = errors.New("Account verification failed")
|
|
|
|
errAccountVerificationInvalidCode = errors.New("Invalid account verification code")
|
2018-04-19 08:48:19 +02:00
|
|
|
errAccountUpdateFailed = errors.New("Error while updating your account information")
|
2018-02-20 10:20:30 +01:00
|
|
|
errCallbackFailed = errors.New("Account verification could not be sent")
|
|
|
|
errCertfpAlreadyExists = errors.New("An account already exists with your certificate")
|
|
|
|
errChannelAlreadyRegistered = errors.New("Channel is already registered")
|
|
|
|
errChannelNameInUse = errors.New("Channel name in use")
|
|
|
|
errInvalidChannelName = errors.New("Invalid channel name")
|
|
|
|
errMonitorLimitExceeded = errors.New("Monitor limit exceeded")
|
|
|
|
errNickMissing = errors.New("nick missing")
|
|
|
|
errNicknameInUse = errors.New("nickname in use")
|
|
|
|
errNicknameReserved = errors.New("nickname is reserved")
|
|
|
|
errNoExistingBan = errors.New("Ban does not exist")
|
|
|
|
errNoSuchChannel = errors.New("No such channel")
|
|
|
|
errRenamePrivsNeeded = errors.New("Only chanops can rename channels")
|
2018-05-25 06:38:20 +02:00
|
|
|
errInsufficientPrivs = errors.New("Insufficient privileges")
|
2018-02-20 10:20:30 +01:00
|
|
|
errSaslFail = errors.New("SASL failed")
|
2018-02-03 13:03:36 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
// Socket Errors
|
|
|
|
var (
|
|
|
|
errNoPeerCerts = errors.New("Client did not provide a certificate")
|
|
|
|
errNotTLS = errors.New("Not a TLS connection")
|
2018-03-18 02:32:12 +01:00
|
|
|
errReadQ = errors.New("ReadQ Exceeded")
|
2018-02-03 13:03:36 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
// String Errors
|
|
|
|
var (
|
|
|
|
errCouldNotStabilize = errors.New("Could not stabilize string while casefolding")
|
|
|
|
errStringIsEmpty = errors.New("String is empty")
|
|
|
|
errInvalidCharacter = errors.New("Invalid character")
|
|
|
|
)
|
|
|
|
|
|
|
|
// Config Errors
|
|
|
|
var (
|
|
|
|
ErrDatastorePathMissing = errors.New("Datastore path missing")
|
|
|
|
ErrInvalidCertKeyPair = errors.New("tls cert+key: invalid pair")
|
|
|
|
ErrLimitsAreInsane = errors.New("Limits aren't setup properly, check them and make them sane")
|
|
|
|
ErrLineLengthsTooSmall = errors.New("Line lengths must be 512 or greater (check the linelen section under server->limits)")
|
|
|
|
ErrLoggerExcludeEmpty = errors.New("Encountered logging type '-' with no type to exclude")
|
|
|
|
ErrLoggerFilenameMissing = errors.New("Logging configuration specifies 'file' method but 'filename' is empty")
|
|
|
|
ErrLoggerHasNoTypes = errors.New("Logger has no types to log")
|
|
|
|
ErrNetworkNameMissing = errors.New("Network name missing")
|
|
|
|
ErrNoFingerprintOrPassword = errors.New("Fingerprint or password needs to be specified")
|
|
|
|
ErrNoListenersDefined = errors.New("Server listening addresses missing")
|
|
|
|
ErrOperClassDependencies = errors.New("OperClasses contains a looping dependency, or a class extends from a class that doesn't exist")
|
|
|
|
ErrServerNameMissing = errors.New("Server name missing")
|
|
|
|
ErrServerNameNotHostname = errors.New("Server name must match the format of a hostname")
|
|
|
|
)
|