From aae74c793ae859baabead8cebdc760455fb39038 Mon Sep 17 00:00:00 2001 From: Unknwon Date: Wed, 25 Mar 2015 08:59:48 -0400 Subject: [PATCH] #1133 add config option [service] DISABLE_MINIMUM_KEY_SIZE_CHECK --- conf/app.ini | 2 ++ models/publickey.go | 40 +++++++++++++++++++------------------- modules/bindata/bindata.go | 4 ++-- modules/setting/setting.go | 23 ++++++++++++---------- 4 files changed, 37 insertions(+), 32 deletions(-) diff --git a/conf/app.ini b/conf/app.ini index fea85a60..6b7d33b2 100644 --- a/conf/app.ini +++ b/conf/app.ini @@ -83,6 +83,8 @@ ENABLE_NOTIFY_MAIL = false ; More detail: https://github.com/gogits/gogs/issues/165 ENABLE_REVERSE_PROXY_AUTHENTICATION = false ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false +; Do not check minimum key size with corresponding type +DISABLE_MINIMUM_KEY_SIZE_CHECK = false [webhook] ; Cron task interval in minutes diff --git a/models/publickey.go b/models/publickey.go index f6cd5b4c..0db9f333 100644 --- a/models/publickey.go +++ b/models/publickey.go @@ -101,17 +101,15 @@ func (key *PublicKey) GetAuthorizedString() string { return fmt.Sprintf(_TPL_PUBLICK_KEY, appPath, key.Id, setting.CustomConf, key.Content) } -var ( - MinimumKeySize = map[string]int{ - "(ED25519)": 256, - "(ECDSA)": 256, - "(NTRU)": 1087, - "(MCE)": 1702, - "(McE)": 1702, - "(RSA)": 2048, - "(DSA)": 1024, - } -) +var minimumKeySizes = map[string]int{ + "(ED25519)": 256, + "(ECDSA)": 256, + "(NTRU)": 1087, + "(MCE)": 1702, + "(McE)": 1702, + "(RSA)": 2048, + "(DSA)": 1024, +} func extractTypeFromBase64Key(key string) (string, error) { b, err := base64.StdEncoding.DecodeString(key) @@ -228,15 +226,17 @@ func CheckPublicKeyString(content string) (bool, error) { } // Check if key type and key size match. - keySize := com.StrTo(sshKeygenOutput[0]).MustInt() - if keySize == 0 { - return false, errors.New("cannot get key size of the given key") - } - keyType := strings.TrimSpace(sshKeygenOutput[len(sshKeygenOutput)-1]) - if minimumKeySize := MinimumKeySize[keyType]; minimumKeySize == 0 { - return false, errors.New("sorry, unrecognized public key type") - } else if keySize < minimumKeySize { - return false, fmt.Errorf("the minimum accepted size of a public key %s is %d", keyType, minimumKeySize) + if !setting.Service.DisableMinimumKeySizeCheck { + keySize := com.StrTo(sshKeygenOutput[0]).MustInt() + if keySize == 0 { + return false, errors.New("cannot get key size of the given key") + } + keyType := strings.TrimSpace(sshKeygenOutput[len(sshKeygenOutput)-1]) + if minimumKeySize := minimumKeySizes[keyType]; minimumKeySize == 0 { + return false, errors.New("sorry, unrecognized public key type") + } else if keySize < minimumKeySize { + return false, fmt.Errorf("the minimum accepted size of a public key %s is %d", keyType, minimumKeySize) + } } return true, nil diff --git a/modules/bindata/bindata.go b/modules/bindata/bindata.go index 9baeec73..6f508c1d 100644 --- a/modules/bindata/bindata.go +++ b/modules/bindata/bindata.go @@ -61,7 +61,7 @@ func (fi bindata_file_info) Sys() interface{} { return nil } -var _conf_app_ini = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xb4\x59\xcd\x73\xe3\x46\x76\xbf\xe3\xaf\xe8\xa1\xe3\x78\x26\xc5\x2f\x49\x9e\x0f\xcb\x56\x62\x8a\x04\x25\xac\x28\x92\x06\x20\xc9\xe3\x29\x15\x06\x02\x9a\x24\x2c\x10\x8d\x41\x03\x92\xb8\x95\x43\x5c\x39\xe4\x9e\x6c\x25\x97\x1c\x92\x43\x2a\x55\x49\x36\xa9\xdc\x76\xb7\x2a\x27\x57\xee\xf6\xff\xe0\xf2\x6e\xfe\x8b\xfc\x5e\x37\x40\x82\x1a\xed\xac\xd7\xc9\xd6\x4c\x89\x40\x7f\xbc\x7e\xdf\xef\xf7\x1a\xef\xb1\xb1\x79\x6e\xda\x4c\xfd\x39\x9d\x0c\xac\xe1\x4b\xe6\x1e\x5b\x0e\x1b\x5a\x23\xd3\x78\x8f\x4d\x47\x66\xcf\x31\xd9\x69\xef\xc4\x64\xfd\xe3\xde\xf8\xc8\x74\xd8\x64\xcc\xfa\x13\xdb\x36\x9d\xe9\x64\x3c\xb0\xc6\x47\xac\x7f\xe6\xb8\x93\x53\x0c\x8e\x87\xd6\x91\xde\x69\x7c\xcc\x7a\x69\xca\x12\x7f\xc9\x59\xbe\xf0\x73\x26\x17\xe2\x56\x32\x91\x30\x7e\xc3\xb3\x15\x4b\xfd\x39\x26\xa2\x3c\xe6\x46\x6f\x3a\xf5\xc6\xbd\x53\x93\x1d\xb0\x23\x31\x97\xfb\xf8\xcb\x8e\xa2\x9c\x39\x3c\xbb\x89\x02\x0e\x4a\xfd\x85\x9f\x60\x39\xc6\xa2\x19\x5b\x89\x82\x65\x45\xc2\x62\x11\xf8\x71\xbc\x32\xec\xb3\xb1\x77\xe6\x80\xfb\x03\x36\x8f\x72\xac\x36\xa3\x7c\xc1\x33\xd6\x08\xf9\x4d\xa3\xc9\x1a\x69\x26\xc2\x06\x13\x18\xc8\xb9\xcc\x31\x12\xf2\x99\x5f\xc4\xa0\x25\xf5\x1a\x45\x01\xa2\x13\x03\x78\x37\x8c\x57\x19\x4f\x85\x8c\x72\x91\xad\x2e\x0d\x7b\x32\x71\xd9\x81\xe1\xf4\x6d\x6b\xea\x7a\xee\xcb\x29\x2d\xbb\xf2\xe5\x02\xeb\x24\x38\xe4\xd9\xa5\x31\xb5\x27\xee\xa4\x3f\x19\x61\x66\x91\xe7\xa9\x31\x98\x9c\xf6\xac\x31\xde\x14\x8f\x0b\x21\x73\x45\xc6\x3b\xb3\x69\xc9\xfb\x8f\xab\xf5\x4f\xe4\x7e\xa7\xf3\xfe\x63\xbd\x1c\x2f\xef\x3f\x3e\x76\xdd\xa9\x37\x9d\xd8\xee\x13\xd9\x31\xd4\x4b\x6f\x30\x80\x68\xc6\x7a\x02\x04\xf6\xba\xdd\x2e\xe4\x1c\x44\xd2\xbf\x8a\x39\x73\x9c\x63\x36\xe3\x7e\x5e\x64\x9c\xdd\x2e\x78\xc2\x12\x91\x33\xff\xc6\x8f\x62\x9a\x36\x06\x96\xd3\x3b\x1c\x99\x1e\x2d\x3b\x60\x33\x3f\x96\xdc\xc0\x73\x45\x6c\x77\xb7\x46\xaa\x3f\x18\x93\x7d\x12\x16\x25\x95\xe2\x96\x22\xe4\xc6\x64\x38\x1c\x59\x63\xb3\xd2\x92\x26\x52\x11\xb6\x27\x67\xae\x69\x7b\xa3\xc9\xd1\x7a\xea\x63\x76\xc4\x13\x9e\xf9\x39\x67\x32\xe7\xa9\xdc\xc7\xc8\x1f\xb1\x20\x84\xd9\xf3\x45\x27\x17\x9d\x39\x0c\xdd\x09\x0a\x99\x8b\x65\x87\x54\x26\xd5\x82\xb6\x1a\x67\x01\xcf\x72\xd6\x0a\xfc\x83\x3c\x2b\x38\x6b\x85\x05\x08\x45\x22\x39\x78\xf1\xfc\x59\x77\xd1\x5d\x76\x25\x6b\x91\x4e\x0f\x96\x2b\xfa\x69\xf3\x3b\x7f\x99\xc6\xbc\x1d\x88\xa5\xf1\x31\xe8\x4c\x32\x36\xcb\xc4\x92\xf9\xac\x9d\xce\xee\xd8\x2c\x82\x60\xfc\x2e\x15\x59\xce\x43\x3d\x03\xff\x60\x17\x51\x12\x92\x47\xd2\x61\xd1\x2c\x0a\x34\xaf\x02\x3a\x7c\x1c\x0a\x50\x21\x25\xce\x44\x36\xe7\x39\xcb\x45\xb9\x5f\x6d\x4c\xb3\xe8\x86\x16\x5f\xf3\xd5\x13\x2d\x97\x48\x79\x22\x65\xcc\xd2\xeb\x40\xee\xec\xb2\x16\x94\x47\x54\xd5\xe9\x2d\x51\xe4\xe5\x1b\x5f\xb2\x56\x22\xb0\x4d\xfe\xb0\x5d\x58\x59\x6d\xa2\x09\x49\x0f\x21\x97\x46\xdf\xb4\x5d\x8f\x82\x0c\xea\xae\xab\xb0\x53\x1d\x63\x9c\x98\x2f\x1f\x5c\x50\x52\xc4\xf1\x67\x69\x8a\x10\x89\x61\xeb\x98\x89\x19\xcb\x39\x34\x48\x42\xf9\x49\x08\x2d\x40\xdd\x81\xd6\x1b\xd9\x0b\xcb\x6b\x21\xa3\x54\x80\x51\x72\x35\x28\x8b\x22\x96\x86\xf9\x1d\x0f\x0a\x28\xd8\x70\xdc\x9e\x6b\xf5\x3d\xe5\xef\xd3\x9e\x0b\x9f\xd3\xa9\x20\x26\x15\xc3\x8a\xe5\xa1\x47\x5f\x58\x53\x26\x8b\x94\xd4\x6a\x98\x63\xe5\x48\x6a\x6c\xe3\x42\x23\x30\x13\x25\x73\x9d\x2a\x60\x0a\x98\x24\x69\xc5\x62\x3e\x87\x19\x0b\x84\x9e\x6c\xb2\xc0\x4f\xd8\x15\x67\x8d\x85\x58\x72\x1d\xe3\x30\x54\x0c\x23\x36\x8c\x51\x4f\xe5\x26\xf0\x70\x44\x7a\xa0\x15\x88\xd8\xd0\xcf\x7d\x04\x2f\xbf\xac\xe5\x89\xe5\x4a\xbe\x89\x55\xa6\x80\x37\xcd\x33\x2e\x35\x25\x0c\x46\x39\xdf\xc3\x44\x94\x7f\x20\x29\xed\x64\x2c\x58\x08\xca\x48\x83\xc3\x2a\x11\xa8\xbd\xc6\xf1\xc4\xa1\x50\xda\xd9\x7d\xde\xee\xe2\xdf\xce\xfe\xde\x5e\xf7\x99\x51\xe6\x34\x72\x69\xa3\x4c\x50\x99\x10\xb9\x31\xed\x39\xce\xc5\x40\xe9\x65\x48\x07\xd5\x8e\x4d\xe2\x55\x93\xf1\x2a\x7f\xe9\xa0\x24\xce\x32\xfe\xa6\x88\xb2\x52\x44\xa4\x9c\x68\xb6\x6a\xcd\x8a\x38\x6e\x20\x92\x47\xeb\xdc\xa5\xd7\x57\x64\x2b\xfe\x15\x55\x43\x9b\x82\x91\xfc\x2a\xc8\xda\xe1\x15\xd4\xe1\x87\xcb\x28\xb9\x54\x99\x2c\x28\xb2\x28\x47\xbe\xb3\xc6\xb0\xe0\x68\x84\x70\xee\x9f\xd4\x8c\xf1\xe8\x91\xce\xfe\xba\x38\xb8\x13\x76\x62\x9a\x53\xf6\x72\x72\x66\x33\x25\xdb\xa0\xe7\xf6\x98\xd3\x1b\x9a\x8f\x1e\x19\x8e\xd9\xb7\x4d\xd7\x83\x17\x82\xc0\xa3\xf7\x3e\x1d\x0e\xcc\x0b\x1b\xff\xff\xf8\x4f\x1e\x93\x2f\x14\xb9\x20\x33\xc2\xdf\x33\xbe\xe4\xcb\x2b\xc8\x1a\xfa\x08\x0a\x24\x10\x6b\xec\xd9\xe6\xa9\x79\x7a\x88\x7c\x32\xe8\xbd\x74\xb0\xff\xb9\xd1\x9f\x4c\x4e\x2c\x53\xe5\xf8\x9a\x4a\x3d\xff\x96\x4b\x32\x6a\x39\xbd\xde\x57\x5f\x13\x25\x41\xc6\xc3\x48\x6b\xc5\xa6\xca\x23\x29\x80\xc5\xdd\x8a\xf9\x05\xb4\x9c\xe4\x95\x57\x2e\xb8\x1f\x82\x11\x55\xaf\x10\x10\xe4\x5f\xea\xc5\xb0\xa9\x32\x3a\xa6\x87\x9c\xfd\xf9\x4b\xaf\x77\xe6\x1e\x9b\x63\x38\x38\x9c\x7c\xb2\xae\x3b\x9f\xb7\x2e\xcc\x43\x9a\x6a\xd1\x40\x59\x18\xe0\x28\x97\x46\xaf\xef\x5a\xe7\xa6\xd7\x87\x85\xbc\x11\x3d\x9d\x5a\x63\x64\x4b\x12\x6c\xe7\x45\x17\xc4\x1d\x93\xc2\x84\x1c\xe2\xb7\x2e\x42\xb4\x2a\x6e\x38\xfc\x1e\xa9\x28\x10\xc9\x2c\xca\x96\x8c\xb7\x96\x48\xf1\x2a\x30\x32\x3e\x8f\x64\xae\xb3\x24\x68\x1e\x59\x0e\x25\x64\x13\x55\x65\xe4\xa9\xa2\x6c\x9f\xd6\x4c\x39\x10\x5c\xea\x1a\x11\xc7\xe2\xb6\xdc\x8c\x03\x28\xf6\x95\x43\x30\x28\x4d\x25\x83\x20\x10\x45\x92\x6b\x07\x5a\x67\x7b\x45\xde\x56\xf2\xd7\x88\x2a\x16\x97\x48\x36\x4c\x46\x73\x55\x3f\xc0\xea\x4d\xc4\x6f\x41\x76\x95\x2f\x10\xc7\x6d\x70\xf6\xd9\x99\x65\xa3\x12\x59\x47\x63\x58\xfa\xdc\x32\x2f\x6a\x14\xfa\x7e\x80\xd4\x82\xba\x95\xfb\xe0\x45\xb2\x34\x0a\xa8\xa4\x55\xc9\xa1\xdf\xeb\x1f\x9b\x5e\xef\x1c\x7e\x66\xd7\x76\x9d\x92\x0e\x20\x8c\x4e\xe1\x24\x7f\xb9\x7e\x3c\x71\x81\x65\x3c\xd2\x41\x7d\x39\x25\xf8\x90\xe7\xd8\xb5\xaf\x6a\x35\x55\x60\xc0\x86\x45\x71\x45\xf5\x83\x42\x23\xca\xa5\x2e\x4f\x91\x94\x05\x97\x9d\x9d\x67\x4f\x2b\x9a\xef\xf2\x85\xf5\x21\xbf\x6d\xed\xe4\x61\xd5\x19\xaf\x6e\xf9\xd5\x42\x88\x6b\x4a\x49\xfd\x0c\xae\x98\xfb\xf2\x1a\x0a\x84\x49\x6e\xfc\x98\x34\x09\x93\x20\xb5\x4a\xc3\xed\x39\x27\x9e\x35\x86\x6d\xcf\x7b\x24\xd4\x0e\x19\x93\xc7\x11\xdc\x1a\x50\x6a\xc9\xa9\x68\x60\x39\x62\x59\x24\xa1\x34\x06\x26\x39\x93\xed\xb9\xd6\xa9\x89\x12\x8d\x0d\x4f\x29\xfc\x94\xd1\xa3\x44\x45\x3c\xaf\x95\x3f\xd2\x9d\x73\x62\x4d\x3d\x77\xe4\x78\xd8\x47\x48\x70\xc3\x24\xf9\x1a\x41\x1d\x2d\xdd\xa0\xa6\xd2\xc3\x62\x36\x53\xb5\x24\x99\xa3\x2a\x20\x76\x02\xa0\xb5\x84\xc7\x4d\x14\x30\x9e\x12\x68\x83\x31\x23\x55\x3b\x4a\xf4\x16\x8a\xe4\x03\x94\xb7\x04\x7c\xdc\x12\x34\x54\x93\x6d\xa4\x8d\xf1\xc0\x3b\x3c\x1b\x0e\x09\x4c\x98\xa4\xa1\x1d\x72\xfe\x31\x85\x24\x72\x1b\x0a\xd4\x0a\x11\x40\xfa\x20\x9b\x6b\xec\xe8\x9c\x1d\xfe\xc4\xec\xbb\x0a\x55\x55\x38\xf2\x89\xac\xfc\x42\xe3\x33\x42\x23\x4b\x65\x70\xb9\xcc\xd3\xf6\x9c\x9e\xc9\xd8\xfb\x4f\x5f\x3c\xc7\xdc\x67\x9f\x95\x13\x6f\xde\xa8\xd1\x5d\xd2\xd2\x58\xe4\xbc\x49\xfc\xaa\x72\x47\xa5\x9f\x43\xa5\xec\x16\x9e\xc2\x1a\x1f\x3e\x7b\x8a\xa4\xec\x9c\xba\x53\x07\x23\x71\x4c\x25\x08\x09\x23\x6c\x23\x0a\xa8\x60\x21\x81\xda\x2e\xb4\x48\x68\x57\xed\xc5\x41\x24\x7e\x06\xc3\x2c\x97\x20\x04\x31\xa8\xfc\xda\xc3\x3e\x7b\xf6\x61\xf7\xa3\x36\xb3\xf4\x41\x9a\xdf\xaa\x2c\xca\x0d\x21\x68\x48\x1d\xe4\xc7\xb7\xc8\x94\xeb\xf3\xca\xc2\xa3\x62\x5a\x45\xb4\x2e\x0d\x8a\x56\x1d\xd7\x88\x3a\xf9\x36\x9b\x20\x9e\x89\x00\x06\xc1\x15\x25\x10\xc9\xe3\x59\x8b\x02\x17\x9c\xd5\x36\x4a\xed\x10\x6b\x67\xd0\x71\xce\x82\x38\x42\xe6\xac\x2f\xa4\xfa\xe6\x11\x2e\xb1\x86\x14\x0e\x1b\x8c\xf8\x00\x56\xd1\x9e\xf4\x2e\xb0\x52\xae\xd8\xa0\x15\x65\x4c\x8d\xe9\xc2\x10\x95\x12\x95\x9f\x74\xf7\x74\x6f\x77\xb7\xcd\x5c\x12\xa2\x04\x02\x5f\x52\x02\xc2\x23\x57\x2e\xb2\x5e\x0c\x09\x49\xfe\x06\xb9\x52\x83\x7d\xa2\x66\x3f\xad\xc1\xc6\x3f\x25\x25\x2c\xe1\x89\xc6\xd0\x46\x1f\x73\x50\x1e\x09\x53\xac\xeb\x80\xca\x8e\xa9\x2f\xe5\xad\xc8\xc2\xb2\x9c\x6f\x2a\xb9\xf1\x4a\x50\x3d\x79\x3b\x3c\xca\x89\xb6\x4e\x31\x6f\xcf\xf7\x47\x16\x52\x88\x67\x11\x91\xf2\x59\x57\x4f\xd5\x72\x4c\xa6\xaa\x08\x54\x79\xca\x4f\xa3\x76\x2d\x57\x11\x6f\x06\x25\xa1\xb2\xaf\x78\x20\x9d\xa9\x32\xdb\x51\x2c\x74\xe8\x8f\xc8\xa2\x9f\x72\xc3\x9d\x9c\x98\xe3\x1f\xb8\x29\x08\xa0\x41\x2f\x07\x6c\x4d\x0c\x05\xeb\xf3\xca\xfc\x51\xa8\xd1\x22\x47\xb5\xc8\x95\x75\x30\x5f\x91\x43\x06\x92\x02\xca\x0d\x09\xec\x01\xe9\x66\xb2\x3d\x17\x62\xae\xd5\xdd\x41\x05\xfe\x92\x07\xf9\x5a\x39\x6a\xe6\xff\xa8\x9c\xdb\xdb\xdb\x92\x10\xd4\x24\xd5\x31\x4a\x02\xd2\x52\x94\xcc\x44\x5b\xfb\xc4\x0f\x5e\x0e\x1e\x09\x01\x3f\xa4\xe0\xb2\x2e\x6e\x89\x24\xb4\xc2\x76\x15\x95\x07\x35\xfc\xce\x5d\xa5\x82\x4b\x85\xbc\x79\xf3\x23\x95\x81\x6e\xc5\x23\x09\x3c\x12\x41\xe5\x36\xf6\xdd\xaf\xfe\xfa\x37\x5f\xfd\xec\x41\x3f\xc9\xfc\x74\x51\x66\xbd\x92\x8f\x76\xf7\x77\xb9\xc9\x83\x7b\xb6\xb9\xbf\xe5\xd1\x95\xf8\x91\x02\x00\x92\x3c\xa8\x71\x78\xbe\x22\x5b\x3b\xf7\x77\x70\xfa\xf0\x96\x2d\x77\x7e\x15\x10\xe4\xd8\x6a\x05\xf8\x12\x4d\xbf\x46\xdc\x28\x39\x0d\x95\x3a\x68\x54\xad\xbc\x77\x77\x50\x2e\x36\x7a\x83\xde\xd4\x55\x38\x50\x8f\x54\x00\xbc\x9c\x2f\x51\xfd\x51\x7f\xab\xa6\x97\x45\x7a\x8b\xe2\xb3\xae\x51\xab\xee\xcf\xba\x15\x21\xcd\x8b\x8a\xb6\x3a\x2f\x20\x90\x20\x8a\x14\x7a\x15\x94\xf7\x74\xba\xc3\x2e\xb5\x61\x1f\x88\x31\x47\xb6\xba\x3e\xc8\x83\xb4\x49\x93\x07\xfb\xcf\xf6\x9e\x7f\xd4\xac\xb2\xd8\xc1\xd2\x0f\x7c\x00\x8e\x66\x78\x75\xd0\x6d\xa6\x42\xc4\x9e\x84\x36\x0f\x76\xba\xdd\x66\x14\xc6\xdc\x2b\x31\xc5\x81\x06\xa1\xd5\xc9\xfb\xec\xf5\xa6\xd1\xd9\xd9\xd9\xdd\xd9\x79\x5d\xd5\x21\x02\xbe\x52\x82\xa1\x87\x75\x4a\xf1\xb4\xd1\xad\x56\x6d\xd9\x7b\x3d\xa4\x57\x20\xa7\x73\x6b\xb0\xad\xd8\x69\x26\x6e\x22\x02\xea\x0a\x05\xcf\xd1\x44\x93\xfc\x52\xb3\x87\x25\xfb\xaa\x0c\x2e\xfc\x1b\x4a\xd8\xab\x6a\xd5\x8a\xd3\xbd\x10\x1d\x8f\x52\xaf\x39\xdc\xb4\xb7\x68\xb8\xda\xf3\x36\x7b\xad\x5a\xa3\x72\x56\xbe\xfe\x83\x69\x91\x04\xde\x47\x77\xd2\xc2\x6f\x2b\xcc\x08\xbc\x75\xd4\x20\x0b\x65\x52\x31\x0c\x30\x0f\x20\x51\x71\x46\x5d\xe3\x7e\x75\xde\xa7\x15\x8f\x5e\x4e\xdd\xde\xeb\xb5\x9a\xbc\xf2\xfa\xad\x6c\xf2\x2a\x49\x70\xa6\x53\x8a\x1c\x00\x65\x46\x5c\xb7\x35\x65\xd7\x54\x36\x4b\x91\x17\x47\xd7\xdc\xd3\xe8\x17\x3b\x2c\x0d\xd4\x08\x23\x54\xfa\x82\xcf\xaa\xd0\x2a\xdd\xb9\x66\xb0\x32\xbc\x35\x41\x84\xf4\x99\x6d\xd6\xe0\xa1\x99\xa8\x9b\x25\x49\x85\x43\x9d\xbf\xb5\x97\x6e\x78\x2a\xc4\x4c\xad\x90\xa6\x82\xed\x6a\x62\xc3\x3a\xa2\x87\xf4\xb8\x0e\xa1\x2d\x22\x2f\x00\xa2\xba\xc6\x51\x7f\x8d\x8d\x15\xe4\x05\x11\x3d\xb1\xa1\x12\x47\x33\xae\xe8\x3c\xb0\xdd\x31\x1d\x87\x5a\xba\x91\x35\x34\xb7\xf7\x1b\xaf\xca\x56\x84\xbc\xda\x25\x3c\x18\xfb\x01\xa7\xfe\xa6\x1c\x57\x0a\xdf\xf4\xed\x1a\x66\x69\xff\x7e\x13\x25\x51\x71\xcf\xbf\xcb\x79\x9c\x68\x9f\x5b\x7d\x3a\xa7\xc4\xa9\xba\xb9\xf1\xce\xa6\xa3\x49\x6f\xe0\xd5\x3b\x76\xdd\x15\x49\x75\x15\x1a\x25\x5c\x72\x7d\x01\xa2\x60\x4f\x80\xe6\x01\x03\x8d\xb0\x10\x72\x51\x88\x86\x71\x64\x97\x84\x1c\x74\xe7\x8a\x3e\xb2\xb6\x22\xb0\x6e\xe2\xaa\x25\x35\x9c\xe2\xe7\x39\xa2\x1b\xe8\x34\x27\x31\x2f\x16\x5c\x09\xb3\x19\x95\xcc\x87\xa4\x5c\x59\x13\x48\x77\xa0\x05\x92\xa4\x86\xd7\x64\xac\xd7\xa5\x19\x37\xb6\x9b\xd2\x2d\x11\xa1\xcb\x1a\x91\x7b\x1b\xb5\x70\x9b\xe9\xd7\x5b\xf7\x14\xb5\x09\xba\xd6\x4b\x38\xa9\x74\x49\x1d\x9c\xea\x5c\xa9\x1d\x5e\xa5\x5c\x96\x61\x12\x2d\xfd\x39\xef\x7c\x99\xf2\xf9\x9f\xeb\xc7\x34\x99\x1b\xbd\xd1\x68\x72\x61\x0e\xd4\x75\x0d\xd5\x97\x07\x17\x11\xda\xbb\x63\x14\xb5\x84\x94\x39\xce\x54\xd9\x61\x9b\xd7\xbd\xdd\xd3\x43\xe3\xb4\xf7\x39\xba\xd7\x2f\x48\xc8\xbd\xdd\x72\x5f\x52\xa8\x2b\x0c\xec\xa4\x4d\x52\x21\xfb\x22\x8d\x85\x7f\x4f\x4b\x68\x66\x68\x3b\x41\x5d\x47\xf7\x36\xc6\x2b\xf2\x45\x52\xb7\x93\xf2\x00\x50\x9a\xeb\xeb\xb5\x12\x8c\x92\xea\xe8\x92\x67\xc5\x90\x3e\x52\xba\x5c\x23\xb5\xf0\x7b\x3a\x04\x10\x46\x12\xde\xab\x88\xa0\xba\x94\xed\x03\x96\x23\x50\xd0\xc1\x2a\xc3\xf5\xc6\x8e\xd5\x6f\xb2\xb3\x24\xba\x1b\xf8\xd4\xdb\xd8\xc5\xd5\xaa\x7c\x1a\xf6\x5f\xec\xee\x56\xbf\x5f\xe8\x87\xa7\xdd\x66\x45\x7a\xfd\xa0\xa7\xf6\xf6\xf6\x3e\x5a\x3f\x8c\xfd\x44\x34\xd9\x49\x94\xa3\x30\x24\xe8\x89\x72\x60\xea\xf2\xe7\x14\x0d\x4b\xb4\x7e\x0e\x32\xa1\x0a\x98\x7a\xa5\x5d\x65\x71\x53\xe6\x24\xb4\x42\x22\x53\x8c\xfa\x57\xd4\xc6\xd6\xd4\x20\x39\x57\x99\x87\xd0\x87\x88\xfd\x64\xde\x16\xd9\xbc\x93\x5e\xcf\x3b\xa4\xbd\xce\x7b\x78\x6a\x11\xdc\xcc\x7d\xf2\x93\xe1\xc4\x3e\xed\xe9\x5a\x04\x1c\xab\xaf\xef\x37\xf7\x90\x55\x4d\x2a\xe1\x69\xbd\x28\x51\x35\xa5\x5f\x6a\x05\x75\xec\x56\x77\x85\xf7\xc2\xb7\xda\x5b\x35\x43\x68\xe9\x7c\x32\x84\xe4\xa9\xaf\x6e\xbc\x97\x58\x19\xa1\xb3\x50\x57\xe7\x95\x77\x56\xdb\x9a\xca\x4b\x1a\x46\x79\x67\x57\x8e\xfe\x7f\xb6\xd1\xf7\x3a\x68\xfd\xad\xa0\x12\xdc\xcd\x90\xba\x48\xcc\x01\xbf\x2a\xe6\xf4\x60\x41\xf7\xf4\x7b\xe1\x67\x4a\x7e\x33\xcb\x44\x46\x0f\xfd\x2c\xa2\xdb\xb1\xfb\xd5\x59\x53\x30\x46\xe6\xb9\x49\x28\x45\xbd\x1a\x15\x52\xa9\x74\xa3\x44\xd7\xf7\x46\x64\x86\x76\x39\x7e\x59\x6d\x5b\x6f\x50\xca\xb8\xbf\x9a\x06\x37\x4b\x3f\xd6\x1d\x9e\xce\x3c\x92\xee\xed\x04\xdc\x02\xde\x8d\xa5\x2c\x13\x39\x9e\x1f\xcb\x5b\xf2\x40\x15\x83\x82\x52\x03\x75\xe1\x25\x34\x78\xf2\x76\xbd\x19\x4d\x8e\x3c\x7b\xe2\xea\x3e\xb5\x4c\x56\x14\xc9\x31\x52\x6b\x2d\x9c\xa9\x97\x87\x15\x89\x9b\x2d\x1a\x4a\xa7\x5d\x1d\xcd\xf4\x55\xc4\xa9\xf4\xac\x34\xbd\x4e\x25\x72\x11\xcd\xf2\x77\xd1\xd9\x7d\x01\xd0\xe2\x27\x20\xc8\x3e\xf9\x04\x6f\x4d\xb6\xfb\xf4\x59\x2d\xc9\x78\xce\xb1\x35\x54\x9f\x68\x5e\xa8\x1a\x36\xa7\x4c\xa8\xa4\x0e\xd1\xc9\xac\xde\x96\x6b\xd0\xb3\x46\x2f\xdf\x92\xcc\xbc\x4b\xa3\x4c\xe5\x8e\x95\x24\x76\x88\x00\xf1\xf2\x38\xe4\x31\xa7\x5b\xbe\x19\x5d\xfe\x2d\xc1\x36\xad\xd8\x56\xd7\x73\xc5\xcc\xfa\x26\xb6\x66\xe6\xe4\x21\x1b\x27\x75\xab\xd9\xbc\x04\xa8\x1a\x9d\x52\x36\xd3\x9f\xfe\x4a\x7d\x2c\x51\x94\x91\x81\x1f\x80\x12\xb6\x09\x28\x33\x36\xfb\xae\x87\x7a\x7c\xea\xd4\x3f\x2b\xb9\xd8\x8f\x58\xcb\xd6\xb4\xd5\x07\xaf\x1a\x12\x06\x91\x18\xc7\xbd\x8b\x6a\x1d\x9c\x94\x61\x01\x6c\x47\x2e\x5f\x20\x3b\xea\xd8\x2f\xc2\xf4\x9e\xdf\xd3\x92\xfa\x87\x3e\xbc\x83\xc0\x71\x1d\x78\x97\x9f\xea\xd6\x17\xf0\x2a\x93\xdc\xd3\x12\x0d\xd6\xb5\xf4\xae\xdb\xad\x6d\x06\x06\x91\x3f\x4f\x70\x5c\x14\x54\xaa\xd3\x57\x22\x0a\x3c\x34\x6a\x37\x61\xef\x5c\x78\xef\x6a\x6c\x7d\x81\xf4\xfb\xdd\x77\x28\xeb\x72\xc2\xae\x9b\x8f\x30\x62\x53\x9f\xcb\x9c\xf7\xaa\xb1\x53\xbf\x65\x69\x34\x1b\xbb\x5b\xef\x97\x64\x13\x93\xee\x28\x9d\x9a\xda\xd6\x69\xf7\xbe\xea\x36\xdf\x6e\x36\xea\xdb\xfe\x86\xc3\xb6\x3e\xa7\x18\x03\x9b\x68\xab\x75\x87\xd8\x17\xd2\x7d\xdc\x1d\x8a\x8a\x66\x6f\x5f\x7d\x8d\xd9\xa7\x3f\x9f\xae\xbf\xd3\xaa\x9b\xdf\x3f\x43\xea\xcd\x00\x58\x0f\x8a\x7c\xf6\xc2\x20\xaf\x51\xf5\x04\xd8\xf8\x52\xc5\xc3\x91\xe5\x7a\x03\x6b\x38\xdc\x8e\x7e\xba\x5b\xcd\xe6\x85\xc6\x4a\xe4\xed\xaa\x32\x40\x8b\x1f\x60\x23\x9b\x07\x1f\x54\xc7\x36\x5a\x2d\x7f\x4e\x1c\x4a\x28\x90\xe1\x05\x19\x8d\xaa\x09\x15\x3a\x55\x0e\x45\xb2\x2e\x78\x51\xde\x92\xc1\x52\xb5\xb0\xa1\x08\xa4\x1a\x98\x07\x9d\x9d\xf6\xf3\xf6\x53\x42\xbc\x3d\xfb\x88\x18\x50\x57\x33\x38\x65\xc1\xfd\x18\xd5\x03\xc5\x38\xb8\x6e\x2b\x8e\xdb\x33\x19\x5c\x5f\xbe\x85\xcd\x4c\xf5\xb9\x4e\xe3\xfa\x4d\x53\xba\x10\x45\xb6\x81\x17\x2a\x47\x7d\xd8\xae\xf7\xa4\xbb\x1f\xbe\x5b\x4a\x3a\xac\x2e\x67\x91\x64\x04\xa7\x54\x07\xd0\x6a\xe5\xfe\x5c\xfe\x3e\x82\x12\xb5\x52\xd4\xb5\x9c\xaf\xa2\x9d\x17\x94\x66\x7a\x63\x35\xc0\x93\xd6\x99\xd3\xfc\xe9\xa2\xd5\x1f\xd3\xdf\xe3\x93\x66\xc8\x5b\x03\xb3\x39\xcb\x5a\x43\xbb\x99\xc4\xad\xf1\xa8\x19\xdf\xb4\x46\xe7\xcd\xac\x68\xd9\x67\xcd\x2f\xfd\xd6\x4f\xa6\x4d\x2e\x5b\xa6\xd3\x4c\xf3\xd6\xa1\xdd\x4c\xe3\xd6\x74\xa4\xbe\xd5\x11\x3d\x13\xa9\x29\x92\x8b\xe6\xaf\xff\xfd\x2f\xbe\xfb\xaf\xbf\xf9\xee\x17\x3f\xff\xfe\x6f\xff\xaa\xf9\xeb\x5f\x7e\xf5\x3f\xff\xfa\xb3\xf2\x65\xc0\x8b\x5c\x06\x8b\xe6\x30\xf3\x93\xaf\xff\xd9\x8f\x64\x73\xcc\xd1\x90\x02\x98\xa0\x9b\x1f\xf9\xf9\x4d\xc4\xff\xfb\x1f\x8b\xe6\x37\xff\xf0\xed\x5f\x7e\xfb\xd5\xb7\x5f\x7d\xf3\xab\x6f\x7e\xf1\xcd\x2f\x9b\xdf\xff\xdd\x3f\x7d\xff\xf7\xff\xf6\x9b\xff\xf8\x79\xd3\x94\xa9\xff\xf5\x7f\x8a\xb8\x39\x05\x46\x2b\xe6\xc5\xd7\xff\x22\xf1\x18\xcb\xeb\x88\x2e\x50\xc8\x9b\x2f\x0d\xe7\x78\x72\xe1\x0d\x81\x5c\x50\xc7\x0f\x6d\xfd\x21\xb3\xca\x5a\xff\x1b\x00\x00\xff\xff\x6d\x65\xcf\x68\xb1\x21\x00\x00") +var _conf_app_ini = []byte("\x1f\x8b\x08\x00\x00\x09\x6e\x88\x00\xff\xb4\x59\xcd\x73\xe3\x46\x76\xbf\xe3\xaf\xe8\xa1\xe3\x78\x26\xc5\x2f\x49\x1e\x8d\x2c\x5b\x89\x29\x12\x94\xb0\xe2\x97\x01\x4a\xf2\x78\x4a\x85\x81\x80\x26\x09\x0b\x44\x63\xd0\x80\x24\x6e\xe5\x10\x57\x0e\xb9\x27\x5b\xc9\x25\x87\xe4\x90\x4a\x55\x92\x4d\x2a\xb7\xdd\xad\xca\xc9\x95\xbb\xfd\x3f\xb8\xbc\x9b\xff\x22\xbf\xd7\x0d\x90\xa0\x46\x9e\xf5\x6e\xb2\x35\x53\x22\xd0\x1f\xaf\xdf\xf7\xfb\xbd\xc6\x7b\x6c\x64\x5e\x98\x36\x53\x7f\x86\xe3\x9e\xd5\x7f\xc9\xa6\xa7\x96\xc3\xfa\xd6\xc0\x34\xde\x63\x93\x81\xd9\x71\x4c\x36\xec\x9c\x99\xac\x7b\xda\x19\x9d\x98\x0e\x1b\x8f\x58\x77\x6c\xdb\xa6\x33\x19\x8f\x7a\xd6\xe8\x84\x75\xcf\x9d\xe9\x78\x88\xc1\x51\xdf\x3a\xd1\x3b\x8d\x8f\x59\x27\x49\x58\xec\x2d\x39\xcb\x16\x5e\xc6\xe4\x42\xdc\x49\x26\x62\xc6\x6f\x79\xba\x62\x89\x37\xc7\x44\x98\x45\xdc\xe8\x4c\x26\xee\xa8\x33\x34\xd9\x11\x3b\x11\x73\x79\x88\xbf\xec\x24\xcc\x98\xc3\xd3\xdb\xd0\xe7\xa0\xd4\x5d\x78\x31\x96\x63\x2c\x9c\xb1\x95\xc8\x59\x9a\xc7\x2c\x12\xbe\x17\x45\x2b\xc3\x3e\x1f\xb9\xe7\x0e\xb8\x3f\x62\xf3\x30\xc3\x6a\x33\xcc\x16\x3c\x65\xb5\x80\xdf\xd6\xea\xac\x96\xa4\x22\xa8\x31\x81\x81\x8c\xcb\x0c\x23\x01\x9f\x79\x79\x04\x5a\x52\xaf\x51\x14\x20\x3a\x31\x80\x77\xc3\x78\x95\xf2\x44\xc8\x30\x13\xe9\xea\xca\xb0\xc7\xe3\x29\x3b\x32\x9c\xae\x6d\x4d\xa6\xee\xf4\xe5\x84\x96\x5d\x7b\x72\x81\x75\x12\x1c\xf2\xf4\xca\x98\xd8\xe3\xe9\xb8\x3b\x1e\x60\x66\x91\x65\x89\xd1\x1b\x0f\x3b\xd6\x08\x6f\x8a\xc7\x85\x90\x99\x22\xe3\x9e\xdb\xb4\xe4\xfd\xa7\xe5\xfa\x67\xf2\xb0\xd5\x7a\xff\xa9\x5e\x8e\x97\xf7\x9f\x9e\x4e\xa7\x13\x77\x32\xb6\xa7\xcf\x64\xcb\x50\x2f\x9d\x5e\x0f\xa2\x19\xeb\x09\x10\xd8\x6b\xb7\xdb\x90\xb3\x17\x4a\xef\x3a\xe2\xcc\x71\x4e\xd9\x8c\x7b\x59\x9e\x72\x76\xb7\xe0\x31\x8b\x45\xc6\xbc\x5b\x2f\x8c\x68\xda\xe8\x59\x4e\xe7\x78\x60\xba\xb4\xec\x88\xcd\xbc\x48\x72\x03\xcf\x25\xb1\xdd\xdd\x0a\xa9\x6e\x6f\x44\xf6\x89\x59\x18\x97\x8a\x5b\x8a\x80\x1b\xe3\x7e\x7f\x60\x8d\xcc\x52\x4b\x9a\x48\x49\xd8\x1e\x9f\x4f\x4d\xdb\x1d\x8c\x4f\xd6\x53\x1f\xb3\x13\x1e\xf3\xd4\xcb\x38\x93\x19\x4f\xe4\x21\x46\xfe\x88\xf9\x01\xcc\x9e\x2d\x5a\x99\x68\xcd\x61\xe8\x96\x9f\xcb\x4c\x2c\x5b\xa4\x32\xa9\x16\x34\xd5\x38\xf3\x79\x9a\xb1\x86\xef\x1d\x65\x69\xce\x59\x23\xc8\x41\x28\x14\xf1\xd1\xc1\x8b\xfd\xf6\xa2\xbd\x6c\x4b\xd6\x20\x9d\x1e\x2d\x57\xf4\xd3\xe4\xf7\xde\x32\x89\x78\xd3\x17\x4b\xe3\x63\xd0\x19\xa7\x6c\x96\x8a\x25\xf3\x58\x33\x99\xdd\xb3\x59\x08\xc1\xf8\x7d\x22\xd2\x8c\x07\x7a\x06\xfe\xc1\x2e\xc3\x38\x20\x8f\xa4\xc3\xc2\x59\xe8\x6b\x5e\x05\x74\xf8\x34\x10\xa0\x42\x4a\x9c\x89\x74\xce\x33\x96\x89\x62\xbf\xda\x98\xa4\xe1\x2d\x2d\xbe\xe1\xab\x67\x5a\x2e\x91\xf0\x58\xca\x88\x25\x37\xbe\xdc\xd9\x65\x0d\x28\x8f\xa8\xaa\xd3\x1b\x22\xcf\x8a\x37\xbe\x64\x8d\x58\x60\x9b\xfc\x71\xbb\xb0\xb2\xdc\x44\x13\x92\x1e\x02\x2e\x8d\xae\x69\x4f\x5d\x0a\x32\xa8\xbb\xaa\xc2\x56\x79\x8c\x71\x66\xbe\x7c\x74\x41\x41\x11\xc7\x9f\x27\x09\x42\x24\x82\xad\x23\x26\x66\x2c\xe3\xd0\x20\x09\xe5\xc5\x01\xb4\x00\x75\xfb\x5a\x6f\x64\x2f\x2c\xaf\x84\x8c\x52\x01\x46\xc9\xd5\xa0\x2c\x8a\x58\x1a\xe6\xf7\xdc\xcf\xa1\x60\xc3\x99\x76\xa6\x56\xd7\x55\xfe\x3e\xe9\x4c\xe1\x73\x3a\x15\x44\xa4\x62\x58\xb1\x38\xf4\xe4\x0b\x6b\xc2\x64\x9e\x90\x5a\x0d\x73\xa4\x1c\x49\x8d\x6d\x5c\x68\x00\x66\xc2\x78\xae\x53\x05\x4c\x01\x93\xc4\x8d\x48\xcc\xe7\x30\x63\x8e\xd0\x93\x75\xe6\x7b\x31\xbb\xe6\xac\xb6\x10\x4b\xae\x63\x1c\x86\x8a\x60\xc4\x9a\x31\xe8\xa8\xdc\x04\x1e\x4e\x48\x0f\xb4\x02\x11\x1b\x78\x99\x87\xe0\xe5\x57\x95\x3c\xb1\x5c\xc9\x37\x91\xca\x14\xf0\xa6\x79\xca\xa5\xa6\x84\xc1\x30\xe3\x7b\x98\x08\xb3\x0f\x24\xa5\x9d\x94\xf9\x0b\x41\x19\xa9\x77\x5c\x26\x02\xb5\xd7\x38\x1d\x3b\x14\x4a\x3b\xbb\x2f\x9a\x6d\xfc\xdb\x39\xdc\xdb\x6b\xef\x1b\x45\x4e\x23\x97\x36\x8a\x04\x95\x0a\x91\x19\x93\x8e\xe3\x5c\xf6\x94\x5e\xfa\x74\x50\xe5\xd8\x38\x5a\xd5\x19\x2f\xf3\x97\x0e\x4a\xe2\x2c\xe5\x6f\xf2\x30\x2d\x44\x44\xca\x09\x67\xab\xc6\x2c\x8f\xa2\x1a\x22\x79\xb0\xce\x5d\x7a\x7d\x49\xb6\xe4\x5f\x51\x35\xb4\x29\x18\xc9\xaf\x82\xac\x19\x5c\x43\x1d\x5e\xb0\x0c\xe3\x2b\x95\xc9\xfc\x3c\x0d\x33\xe4\x3b\x6b\x04\x0b\x0e\x06\x08\xe7\xee\x59\xc5\x18\x4f\x9e\xe8\xec\xaf\x8b\xc3\x74\xcc\xce\x4c\x73\xc2\x5e\x8e\xcf\x6d\xa6\x64\xeb\x75\xa6\x1d\xe6\x74\xfa\xe6\x93\x27\x86\x63\x76\x6d\x73\xea\xc2\x0b\x41\xe0\xc9\x7b\x9f\xf6\x7b\xe6\xa5\x8d\xff\x7f\xfc\x27\x4f\xc9\x17\xf2\x4c\x90\x19\xe1\xef\x29\x5f\xf2\xe5\x35\x64\x0d\x3c\x04\x05\x12\x88\x35\x72\x6d\x73\x68\x0e\x8f\x91\x4f\x7a\x9d\x97\x0e\xf6\xbf\x30\xba\xe3\xf1\x99\x65\xaa\x1c\x5f\x51\xa9\xeb\xdd\x71\x49\x46\x2d\xa6\xd7\xfb\xaa\x6b\xc2\xd8\x4f\x79\x10\x6a\xad\xd8\x54\x79\x24\x05\xb0\xb8\x5f\x31\x2f\x87\x96\xe3\xac\xf4\xca\x05\xf7\x02\x30\xa2\xea\x15\x02\x82\xfc\x4b\xbd\x18\x36\x55\x46\xc7\x74\x91\xb3\x3f\x7f\xe9\x76\xce\xa7\xa7\xe6\x08\x0e\x0e\x27\x1f\xaf\xeb\xce\xe7\x8d\x4b\xf3\x98\xa6\x1a\x34\x50\x14\x06\x38\xca\x95\xd1\xe9\x4e\xad\x0b\xd3\xed\xc2\x42\xee\x80\x9e\x86\xd6\x08\xd9\x92\x04\xdb\x39\x68\x83\xb8\x63\x52\x98\x90\x43\xfc\xe0\x22\x44\xab\xe2\x86\xc3\xef\x91\x8a\x7c\x11\xcf\xc2\x74\xc9\x78\x63\x89\x14\xaf\x02\x23\xe5\xf3\x50\x66\x3a\x4b\x82\xe6\x89\xe5\x50\x42\x36\x51\x55\x06\xae\x2a\xca\xf6\xb0\x62\xca\x9e\xe0\x52\xd7\x88\x28\x12\x77\xc5\x66\x1c\x40\xb1\xaf\x1c\x82\x41\x69\x2a\x19\xf8\xbe\xc8\xe3\x4c\x3b\xd0\x3a\xdb\x2b\xf2\xb6\x92\xbf\x42\x54\xb1\xb8\x44\xb2\x61\x32\x9c\xab\xfa\x01\x56\x6f\x43\x7e\x07\xb2\xab\x6c\x81\x38\x6e\x82\xb3\xcf\xce\x2d\x1b\x95\xc8\x3a\x19\xc1\xd2\x17\x96\x79\x59\xa1\xd0\xf5\x7c\xa4\x16\xd4\xad\xcc\x03\x2f\x92\x25\xa1\x4f\x25\xad\x4c\x0e\xdd\x4e\xf7\xd4\x74\x3b\x17\xf0\x33\xbb\xb2\x6b\x48\x3a\x80\x30\x3a\x85\x93\xfc\xc5\xfa\xd1\x78\x0a\x2c\xe3\x92\x0e\xaa\xcb\x29\xc1\x07\x3c\xc3\xae\x43\x55\xab\xa9\x02\x03\x36\x2c\xf2\x6b\xaa\x1f\x14\x1a\x61\x26\x75\x79\x0a\xa5\xcc\xb9\x6c\xed\xec\x3f\x2f\x69\xbe\xcb\x17\xd6\x87\xfc\xd0\xda\xf1\x0f\xa9\xae\x27\x94\x35\x20\xbd\x7f\xc3\xa0\xfe\x70\x99\x2f\x29\xf9\x43\x93\x3f\x45\x45\x07\x73\xb0\x79\x8a\x04\x91\x08\x9d\x10\xb3\x55\xb2\xa9\xbe\xf0\x15\x6b\x78\x3e\xa4\x68\x83\x62\xbf\x80\xa2\x4e\xcd\x4a\xe4\x1a\xaf\xee\xf8\xf5\x42\x88\x1b\xca\x78\xdd\x14\x9e\x9e\x79\xf2\x06\xf6\x81\xc5\x6f\xbd\x88\x0c\x85\x23\x91\xb9\xa5\x31\xed\x38\x67\xae\x35\x82\xeb\x5c\x74\x48\x67\x3b\xc4\x1b\x8f\x42\x44\x0d\x90\xda\x92\x53\x4d\xc2\x72\xa4\x0a\xf0\x21\x8d\x9e\x49\xbe\x6a\xbb\x53\x6b\x68\x02\x01\x60\xc3\x73\x8a\x6e\xe5\x53\x61\xac\x12\x0a\xaf\x54\x57\x32\x8d\x73\x66\x4d\xdc\xe9\xc0\x71\xb1\x8f\x80\xe6\x86\x49\x72\x65\x42\x52\x5a\x79\xbd\x8a\x76\x8e\xf3\xd9\x4c\x95\xaa\x78\x0e\x45\x20\x34\x7d\x80\xc1\x98\x47\x75\xa8\x88\x27\x84\x09\xe1\x2b\xa1\x2a\x4d\x05\x38\x0c\x44\xfc\x01\xaa\x67\x0c\x3e\xee\x08\x79\xaa\xc9\x26\xb2\xd2\xa8\xe7\x1e\x9f\xf7\xfb\x84\x55\x4c\x32\xc0\x0e\xc5\xd6\x88\x22\x1e\xa9\x13\xf5\x6f\x85\x00\x23\x7d\x90\x4b\x69\x68\xea\x9c\x1f\xff\xc4\xec\x4e\x15\x68\x2b\x61\xea\x33\x59\xba\x9d\x86\x7f\x04\x76\x96\xca\x9f\xe4\x32\x4b\x9a\x73\x7a\x26\x5f\x3a\x7c\x7e\xf0\x02\x73\x9f\x7d\x56\x4c\xbc\x79\xa3\x46\x77\x49\x4b\x23\x91\xf1\x3a\xf1\xab\xaa\x29\x21\x0b\x0e\x95\x6a\x5b\xd7\x3e\xdc\x7f\x8e\x9c\xef\x0c\xa7\x13\x07\x23\x51\x44\x15\x0e\xf9\x28\x68\x22\xc8\xc8\xfc\xc8\xcf\xf6\x14\x5a\x24\x30\xad\xf6\xe2\x20\x12\x3f\x85\x61\x96\x4b\x10\x82\x18\x54\xdd\xed\x7e\x97\xed\x7f\xd8\xfe\xa8\xc9\x2c\x7d\x90\xe6\xb7\xac\xba\x72\x43\x08\x1a\x52\x07\x79\xd1\x1d\x12\xf1\xfa\xbc\xa2\xae\x6d\x5c\x54\x57\x1e\x45\xab\x0a\x9b\x44\x95\x7c\x93\x8d\x91\x2e\x88\x00\x06\xc1\x15\xe5\x27\xc9\xa3\x59\x83\xf2\x02\x38\xab\x6c\x94\xda\x21\xd6\xce\xa0\xd3\x08\xf3\xa3\x10\x89\xb9\xba\x90\xca\xa7\x4b\xb0\xc7\xea\x53\xb4\x6d\x20\xe8\x23\x50\x48\x7b\xd2\xbb\xb0\x50\xb1\x62\x03\x86\x94\x31\x35\x64\x0c\x02\xc4\x19\x80\x05\xe9\xee\xf9\xde\xee\x6e\x93\x4d\x49\x88\x02\x67\x7c\x49\xf9\x0d\x8f\x5c\xb9\xc8\x7a\x31\x24\x24\xf9\x6b\xe4\x4a\x35\xf6\x89\x9a\xfd\xb4\x82\x4a\xff\x94\x94\xb0\x84\x27\x1a\x7d\x1b\x6d\xd2\x51\x71\x24\x4c\xb1\x2e\x33\x2a\xf9\x26\x9e\x94\x77\x22\x0d\x0a\xb4\xb0\x01\x0a\xc6\x2b\x41\xe5\xea\xed\xf0\x28\x26\x9a\x3a\x83\xbd\x3d\xdf\x1d\x58\xc8\x50\xae\x45\x44\x8a\x67\x5d\x9c\x55\x47\x33\x9e\xa8\x1a\x53\xa6\x41\x2f\x09\x9b\x95\x54\x48\xbc\x19\x94\xe3\x8a\xb6\xe5\x91\x6c\xa9\xaa\x78\x4b\xb1\xd0\xa2\x3f\x22\x45\xc6\x32\xa6\xe3\x33\x73\xf4\x23\x37\xf9\x3e\x34\xe8\x66\x40\xc5\xb1\xa1\xba\x86\xac\x34\x7f\x18\x68\x30\xca\x51\x8c\x32\x65\x1d\xcc\x97\xe4\x90\x81\xa4\x80\x72\x03\xc2\x92\x00\xd2\xa9\x6c\xce\x85\x98\x6b\x75\xb7\x50\xe0\xbf\xe4\x7e\xb6\x56\x8e\x9a\xf9\x3f\x2a\xe7\xee\xee\xae\x20\x04\x35\x49\x75\x8c\x92\x80\xb4\x14\xc6\x33\xd1\xd4\x3e\xf1\xa3\x97\x83\x47\x02\xd8\x8f\x29\xb8\x28\xbb\x5b\x22\x09\xad\xb0\x5d\x45\xe5\x51\x0d\xbf\x73\x57\xa1\xe0\x42\x21\x6f\xde\xfc\x9e\xca\x40\x33\xe4\x92\x04\x2e\x89\xa0\x72\x1b\xfb\xee\x57\x7f\xfd\x9b\xaf\x7e\xf6\xa8\x9f\xa4\x5e\xb2\x28\xb2\x5e\xc1\x47\xb3\xfd\xdb\xdc\xe4\xd1\x3d\xdb\xdc\xdf\xf1\xf0\x5a\xfc\x9e\x02\x00\xf1\x3c\xaa\x71\x78\xbe\x22\x5b\x39\xf7\xb7\x70\xfa\xf8\x96\x2d\x77\x7e\xe5\x13\xa2\xd9\xea\x34\xf8\x52\xa4\x2b\x0d\xe8\x51\x72\x6a\x2a\x75\xd0\xa8\x5a\xf9\xe0\x6a\xa2\x58\x6c\x74\x7a\x9d\xc9\x54\xc1\x4c\x3d\x52\xe2\xfb\x62\xbe\x68\x1a\x4e\xba\x5b\x35\xbd\x28\xd2\x5b\x14\xf7\xdb\x46\xa5\xba\xef\xb7\x4b\x42\x9a\x17\x15\x6d\x55\x5e\x40\x20\x46\x14\x29\x70\x2c\x28\xef\xe9\x74\x87\x5d\x6a\xc3\x21\x00\x69\x86\x6c\x75\x73\x94\xf9\x49\x9d\x26\x8f\x0e\xf7\xf7\x5e\x7c\x54\x2f\xb3\xd8\xd1\xd2\xf3\x3d\x00\x8e\x7a\x70\x7d\xd4\xae\x27\x42\x44\x2e\x01\x9a\xa3\x9d\x76\xbb\x1e\x06\x11\x77\x0b\x4c\x71\xa4\x31\x6e\x79\xf2\x21\x7b\xbd\xe9\xa3\x76\x76\x76\x77\x76\x5e\x97\x75\x88\x70\xb5\x94\x60\xe8\x71\x9d\x52\x3c\x6d\x74\xab\x55\x5b\xb4\x76\x8f\xe9\x15\xc0\xec\xc2\xea\x6d\x2b\x76\x92\x8a\xdb\x90\xfa\x00\x05\xb2\xe7\xe8\xd1\x49\x7e\xa9\xd9\xc3\x92\x43\x55\x06\x17\xde\x2d\x25\xec\x55\xb9\x6a\xc5\xe9\xda\x89\x8e\x47\xa9\xd7\x1c\x6e\xba\x67\xf4\x73\xcd\x79\x93\xbd\x56\x9d\x57\x31\x2b\x5f\xff\xc1\xb4\x48\x02\x1f\xa2\xf9\x69\xe0\xb7\x11\xa4\x04\xde\x5a\x6a\x90\x05\x32\x2e\x19\x46\xaf\x00\x20\x51\x72\x46\x4d\xe9\x61\x79\xde\xa7\x25\x8f\x6e\x46\xcd\xe4\xeb\xb5\x9a\xdc\xe2\x76\xaf\xe8\x21\x4b\x49\x70\xa6\x53\x88\xec\x03\x65\x86\x5c\x77\x4d\x45\x53\x56\xf4\x62\xa1\x1b\x85\x37\xdc\xd5\xe0\x1a\x3b\x2c\x0d\xd4\x08\x23\x94\xfa\x82\xcf\xaa\xd0\x2a\xdc\xb9\x62\xb0\x22\xbc\x35\x41\x84\xf4\xb9\x6d\x56\xe0\xa1\x19\xab\x8b\x2b\x49\x85\x43\x9d\xbf\xb5\x97\x2e\x90\x4a\x40\x4e\x9d\x96\xa6\x82\xed\x6a\x62\xc3\x3a\xa2\x87\xf4\xb8\x0e\xa1\x2d\x22\x07\x00\x51\x6d\xe3\xa4\xbb\xc6\xc6\x0a\xf2\x82\x88\x9e\xd8\x50\x89\xc2\x19\x57\x74\x1e\xd9\xee\x98\x8e\x43\x1d\xe3\xc0\xea\x9b\xdb\xfb\x8d\x57\x45\xa7\x43\x5e\x3d\x25\x3c\x18\x79\x3e\xa7\xf6\xa9\x18\x57\x0a\xdf\x5c\x0b\x68\x98\xa5\xfd\xfb\x0d\xba\x85\xfc\x81\x7f\x17\xf3\x38\xd1\xbe\xb0\xba\x74\x4e\x81\x53\x75\xef\xe4\x9e\x4f\x06\xe3\x4e\xcf\xad\x5e\x08\xe8\xa6\x4b\xaa\x9b\xd6\x30\xe6\x92\xeb\xfb\x15\x05\x7b\x7c\x34\x0f\x18\xa8\x05\xb9\x90\x8b\x5c\xd4\x8c\x13\xbb\x20\xe4\xa0\xf9\x57\xf4\x91\xb5\x15\x81\x75\x4f\x52\x2e\xa9\xe0\x14\x2f\xcb\x10\xdd\x40\xa7\x19\x89\x79\xb9\xe0\x4a\x98\xcd\xa8\x64\x1e\x24\xe5\xca\x9a\x40\xba\x3d\x2d\x90\x24\x35\xbc\x26\x63\xbd\x2e\xcc\xb8\xb1\xdd\x84\x2e\xa1\x08\x5d\x56\x88\x3c\xd8\xa8\x85\xdb\x4c\xbf\xde\xba\x06\xa9\x4c\xd0\xad\x61\xcc\x49\xa5\x4b\x6a\x10\x55\x63\x4c\xdd\x36\x1a\x2d\x59\x84\x49\xb8\xf4\xe6\xbc\xf5\x65\xc2\xe7\x7f\xae\x1f\x93\x78\x6e\x74\x06\x83\xf1\xa5\xd9\x53\xb7\x41\x54\x5f\x1e\x5d\x44\x68\xef\x5e\x37\x73\x40\xca\x1c\x67\xaa\xec\xb0\xcd\xeb\xde\xee\xf0\xd8\x18\x76\x3e\x57\x3d\x1c\xdd\xf1\xee\x16\xfb\xe2\x5c\xdd\x90\x60\x27\x6d\x92\x0a\xd9\xe7\x49\x24\xbc\x07\x5a\x42\x33\x43\xdb\x09\xea\x3a\xba\xb7\x31\x5e\x91\x2f\x92\xba\x9d\x84\xfb\x80\xd2\x5c\xdf\xde\x15\x60\x94\x54\x47\x77\x48\x2b\x86\xf4\x91\xd0\xdd\x1d\xa9\x85\x3f\xd0\x21\x80\x30\x92\xf0\x5e\x49\x04\xd5\xa5\x68\x1f\xb0\x1c\x81\x82\x06\x59\x19\xae\x33\x72\xac\x6e\x9d\x9d\xc7\xe1\x7d\xcf\xa3\xde\xc6\xce\xaf\x57\xc5\x53\xbf\x7b\xb0\xbb\x5b\xfe\x7e\xa1\x1f\x9e\xb7\xeb\x25\xe9\xf5\x83\x9e\xda\xdb\xdb\xfb\x68\xfd\x30\xf2\x62\x51\x67\x67\x61\x86\xc2\x10\xa3\x27\xca\x80\xa9\x8b\x9f\x21\x1a\x96\x70\xfd\xec\xa7\x42\x15\x30\xf5\x4a\xbb\x8a\xe2\xa6\xcc\x49\x68\x85\x44\xa6\x18\xf5\xae\xa9\x8d\xad\xa8\x41\x72\xae\x32\x0f\xa1\x0f\x11\x79\xf1\xbc\x29\xd2\x79\x2b\xb9\x99\xb7\x48\x7b\xad\xf7\xf0\xd4\x20\xb8\x99\x79\xe4\x27\xfd\xb1\x3d\xec\xe8\x5a\x04\x1c\xab\xbf\x0e\x6c\xae\x39\xcb\x9a\x54\xc0\xd3\x6a\x51\xa2\x6a\x4a\xbf\xd4\x0a\xea\xd8\x2d\xaf\x22\x1f\x84\x6f\xb9\xb7\x6c\x86\xd0\xd2\x79\x64\x08\xc9\x13\x4f\x5d\xa8\x2f\xb1\x32\x44\x67\xa1\x6e\xe6\x4b\xef\x2c\xb7\xd5\x95\x97\xd4\x8c\xe2\x4a\xb0\x18\xfd\xff\x6c\xa3\x1f\x74\xd0\xfa\x53\x44\x29\xf8\x34\x45\xea\x22\x31\x7b\xfc\x3a\x9f\xd3\x83\x05\xdd\xd3\xef\xa5\x97\x2a\xf9\xcd\x34\x15\x29\x3d\x74\xd3\x90\x2e\xdf\x1e\x56\x67\x4d\xc1\x18\x98\x17\x26\xa1\x14\xf5\x6a\x94\x48\xa5\xd4\x8d\x12\x5d\x5f\x4b\x91\x19\x9a\xc5\xf8\x55\xb9\x6d\xbd\x41\x29\xe3\xe1\x6a\x1a\xdc\x2c\xfd\x58\x77\x78\x3a\xf3\x48\xba\x16\x14\x70\x0b\x78\x37\x96\xb2\x54\x64\x78\x7e\x2a\xef\xc8\x03\x55\x0c\x0a\x4a\x0d\xd4\x85\x17\xd0\xe0\xd9\xdb\xf5\x66\x30\x3e\x71\xed\xf1\x54\xf7\xa9\x45\xb2\xa2\x48\x8e\x90\x5a\x2b\xe1\x4c\xbd\x3c\xac\x48\xdc\x6c\xd1\x50\x3a\x6d\xeb\x68\xa6\x8f\x2e\x4e\xa9\x67\xa5\xe9\x75\x2a\x91\x8b\x70\x96\xbd\x8b\xce\xee\x01\x40\x8b\x17\x83\x20\xfb\xe4\x13\xbc\xd5\xd9\xee\xf3\xfd\x4a\x92\x71\x9d\x53\xab\xaf\xbe\x00\x1d\xa8\x1a\x36\xa7\x4c\xa8\xa4\x0e\xd0\xc9\xac\xde\x96\xab\xd7\xb1\x06\x2f\xdf\x92\xcc\xbc\x4f\xc2\x54\xe5\x8e\x95\x24\x76\x88\x00\xf1\xf2\x34\xe0\x11\xa7\x4b\xc4\x19\xdd\x2d\x2e\xc1\x36\xad\xd8\x56\xd7\x0b\xc5\xcc\xfa\xa2\xb7\x62\xe6\xf8\x31\x1b\xc7\x55\xab\xd9\xbc\x00\xa8\x1a\x9d\x52\x36\xd3\x5f\x16\x0b\x7d\x2c\x51\x94\x91\x81\x1f\x81\x12\xb6\x09\x28\x33\x32\xbb\x53\x17\xf5\x78\xe8\x54\xbf\x5a\x4d\xb1\x1f\xb1\x96\xae\x69\xab\xef\x69\x15\x24\x0c\x22\x11\x8e\x7b\x17\xd5\x2a\x38\x29\xc2\x02\xd8\x8e\x5c\x3e\x47\x76\xd4\xb1\x9f\x07\xc9\x03\xbf\xa7\x25\xd5\xef\x88\x78\x07\x81\xd3\x2a\xf0\x2e\xbe\x04\xae\xef\xf7\x55\x26\x79\xa0\x25\x1a\xac\x6a\xe9\x5d\xb7\x5b\xdb\x0c\xf4\x42\x6f\x1e\xe3\xb8\xd0\x2f\x55\xa7\xaf\x44\x14\x78\xa8\x55\x6e\xc2\xde\xb9\xf0\xc1\xd5\xd8\xfa\x02\xe9\x77\xbb\xef\x50\xd6\xe5\x84\x5d\x37\xdf\x78\xc4\xa6\x3e\x17\x39\xef\x55\x6d\xa7\x7a\xcb\x52\xab\xd7\x76\xb7\xde\xaf\xc8\x26\x26\xdd\x51\x3a\x15\xb5\xad\xd3\xee\x43\xd5\x6d\x3e\x0d\x6d\xd4\xb7\xfd\x89\x88\x6d\x7d\xad\x31\x7a\x36\xd1\x56\xeb\x8e\xb1\x2f\xa0\xfb\xb8\x7b\x14\x15\xcd\xde\xa1\xfa\xd8\x73\x48\x7f\x3e\x5d\x7f\x06\x56\x17\xcb\x7f\x86\xd4\x9b\x02\xb0\x1e\xe5\xd9\xec\xc0\x20\xaf\x51\xf5\x04\xd8\xf8\x4a\xc5\xc3\x89\x35\x75\x7b\x56\xbf\xbf\x1d\xfd\x74\xb7\x9a\xce\x73\x8d\x95\xc8\xdb\x55\x65\x80\x16\x3f\xc0\x46\x36\xf7\x3f\x28\x8f\xad\x35\x1a\xde\x9c\x38\x94\x50\x20\xc3\x0b\x32\x1a\x55\x13\x2a\x74\xaa\x1c\x8a\x78\x5d\xf0\xc2\xac\x21\xfd\xa5\x6a\x61\x03\xe1\x4b\x35\x30\xf7\x5b\x3b\xcd\x17\xcd\xe7\x84\x78\x3b\xf6\x09\x31\xa0\xae\x66\x70\xca\x82\x7b\x11\xdd\x46\xd3\x4d\x75\x53\x71\xdc\x9c\x49\xff\xe6\xea\x2d\x6c\x66\xaa\xaf\x81\x1a\xd7\x6f\x9a\xd2\x85\xc8\xd3\x0d\xbc\x50\x39\xea\xc3\x66\xb5\x27\xdd\xfd\xf0\xdd\x52\xd2\x61\x55\x39\xf3\x38\x25\x38\xa5\x3a\x80\x46\x23\xf3\xe6\xf2\x77\x11\x94\xa8\x15\xa2\xae\xe5\x7c\x15\xee\x1c\x50\x9a\xe9\x8c\xd4\x00\x8f\x1b\xe7\x4e\xfd\xa7\x8b\x46\x77\x44\x7f\x4f\xcf\xea\x01\x6f\xf4\xcc\xfa\x2c\x6d\xf4\xed\x7a\x1c\x35\x46\x83\x7a\x74\xdb\x18\x5c\xd4\xd3\xbc\x61\x9f\xd7\xbf\xf4\x1a\x3f\x99\xd4\xb9\x6c\x98\x4e\x3d\xc9\x1a\xc7\x76\x3d\x89\x1a\x93\x81\xfa\x14\x48\xf4\x4c\xa4\xa6\x50\x2e\xea\xbf\xfe\xf7\xbf\xf8\xee\xbf\xfe\xe6\xbb\x5f\xfc\xfc\xfb\xbf\xfd\xab\xfa\xaf\x7f\xf9\xd5\xff\xfc\xeb\xcf\x8a\x97\x1e\xcf\x33\xe9\x2f\xea\xfd\xd4\x8b\xbf\xfe\x67\x2f\x94\xf5\x11\x47\x43\x0a\x60\x82\x6e\x7e\xe0\x65\xb7\x21\xff\xef\x7f\xcc\xeb\xdf\xfc\xc3\xb7\x7f\xf9\xed\x57\xdf\x7e\xf5\xcd\xaf\xbe\xf9\xc5\x37\xbf\xac\x7f\xff\x77\xff\xf4\xfd\xdf\xff\xdb\x6f\xfe\xe3\xe7\x75\x53\x26\xde\xd7\xff\x29\xa2\xfa\x04\x18\x2d\x9f\xe7\x5f\xff\x8b\xc4\x63\x24\x6f\x42\xba\x40\x21\x6f\xbe\x32\x9c\xd3\xf1\xa5\xdb\x07\x72\x41\x1d\x3f\xb6\xf5\x77\xd2\x32\x6b\xfd\x6f\x00\x00\x00\xff\xff\x33\xe1\x75\xa2\x10\x22\x00\x00") func conf_app_ini_bytes() ([]byte, error) { return bindata_read( @@ -76,7 +76,7 @@ func conf_app_ini() (*asset, error) { return nil, err } - info := bindata_file_info{name: "conf/app.ini", size: 8625, mode: os.FileMode(420), modTime: time.Unix(1427119977, 0)} + info := bindata_file_info{name: "conf/app.ini", size: 8720, mode: os.FileMode(420), modTime: time.Unix(1427288024, 0)} a := &asset{bytes: bytes, info: info} return a, nil } diff --git a/modules/setting/setting.go b/modules/setting/setting.go index 12fd52c9..b676e85c 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -339,6 +339,8 @@ func NewConfigContext() { } var Service struct { + ActiveCodeLives int + ResetPwdCodeLives int RegisterEmailConfirm bool DisableRegistration bool ShowRegistrationButton bool @@ -347,19 +349,20 @@ var Service struct { EnableNotifyMail bool EnableReverseProxyAuth bool EnableReverseProxyAutoRegister bool - ActiveCodeLives int - ResetPwdCodeLives int + DisableMinimumKeySizeCheck bool } func newService() { - Service.ActiveCodeLives = Cfg.Section("service").Key("ACTIVE_CODE_LIVE_MINUTES").MustInt(180) - Service.ResetPwdCodeLives = Cfg.Section("service").Key("RESET_PASSWD_CODE_LIVE_MINUTES").MustInt(180) - Service.DisableRegistration = Cfg.Section("service").Key("DISABLE_REGISTRATION").MustBool() - Service.ShowRegistrationButton = Cfg.Section("service").Key("SHOW_REGISTRATION_BUTTON").MustBool(!Service.DisableRegistration) - Service.RequireSignInView = Cfg.Section("service").Key("REQUIRE_SIGNIN_VIEW").MustBool() - Service.EnableCacheAvatar = Cfg.Section("service").Key("ENABLE_CACHE_AVATAR").MustBool() - Service.EnableReverseProxyAuth = Cfg.Section("service").Key("ENABLE_REVERSE_PROXY_AUTHENTICATION").MustBool() - Service.EnableReverseProxyAutoRegister = Cfg.Section("service").Key("ENABLE_REVERSE_PROXY_AUTO_REGISTRATION").MustBool() + sec := Cfg.Section("service") + Service.ActiveCodeLives = sec.Key("ACTIVE_CODE_LIVE_MINUTES").MustInt(180) + Service.ResetPwdCodeLives = sec.Key("RESET_PASSWD_CODE_LIVE_MINUTES").MustInt(180) + Service.DisableRegistration = sec.Key("DISABLE_REGISTRATION").MustBool() + Service.ShowRegistrationButton = sec.Key("SHOW_REGISTRATION_BUTTON").MustBool(!Service.DisableRegistration) + Service.RequireSignInView = sec.Key("REQUIRE_SIGNIN_VIEW").MustBool() + Service.EnableCacheAvatar = sec.Key("ENABLE_CACHE_AVATAR").MustBool() + Service.EnableReverseProxyAuth = sec.Key("ENABLE_REVERSE_PROXY_AUTHENTICATION").MustBool() + Service.EnableReverseProxyAutoRegister = sec.Key("ENABLE_REVERSE_PROXY_AUTO_REGISTRATION").MustBool() + Service.DisableRegistration = sec.Key("DISABLE_MINIMUM_KEY_SIZE_CHECK").MustBool() } var logLevels = map[string]string{