bindata.go 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421
  1. // Code generated by go-bindata.
  2. // sources:
  3. // template/auth.swagger.json
  4. // template/ccd.file.tmpl
  5. // template/client.ovpn.tmpl
  6. // template/dh4096.pem.tmpl
  7. // template/iptables.tmpl
  8. // template/network.swagger.json
  9. // template/server.conf.tmpl
  10. // template/user.swagger.json
  11. // template/vpn.swagger.json
  12. // DO NOT EDIT!
  13. package bindata
  14. import (
  15. "bytes"
  16. "compress/gzip"
  17. "fmt"
  18. "io"
  19. "io/ioutil"
  20. "os"
  21. "path/filepath"
  22. "strings"
  23. "time"
  24. )
  25. func bindataRead(data []byte, name string) ([]byte, error) {
  26. gz, err := gzip.NewReader(bytes.NewBuffer(data))
  27. if err != nil {
  28. return nil, fmt.Errorf("Read %q: %v", name, err)
  29. }
  30. var buf bytes.Buffer
  31. _, err = io.Copy(&buf, gz)
  32. clErr := gz.Close()
  33. if err != nil {
  34. return nil, fmt.Errorf("Read %q: %v", name, err)
  35. }
  36. if clErr != nil {
  37. return nil, err
  38. }
  39. return buf.Bytes(), nil
  40. }
  41. type asset struct {
  42. bytes []byte
  43. info os.FileInfo
  44. }
  45. type bindataFileInfo struct {
  46. name string
  47. size int64
  48. mode os.FileMode
  49. modTime time.Time
  50. }
  51. func (fi bindataFileInfo) Name() string {
  52. return fi.name
  53. }
  54. func (fi bindataFileInfo) Size() int64 {
  55. return fi.size
  56. }
  57. func (fi bindataFileInfo) Mode() os.FileMode {
  58. return fi.mode
  59. }
  60. func (fi bindataFileInfo) ModTime() time.Time {
  61. return fi.modTime
  62. }
  63. func (fi bindataFileInfo) IsDir() bool {
  64. return false
  65. }
  66. func (fi bindataFileInfo) Sys() interface{} {
  67. return nil
  68. }
  69. var _templateAuthSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x55\xc1\x8e\xda\x30\x10\xbd\xe7\x2b\x2c\xb7\xc7\xd5\x42\x57\x55\x0f\xdc\x7a\xec\xb5\xab\x9e\x2a\x14\x99\x64\x08\xde\x12\x8f\x77\x66\x02\x5a\x55\xfc\x7b\x65\x13\x88\x13\x48\x45\xb3\xad\xba\x1c\x90\xc9\xcc\x7b\x7a\xef\x65\x3c\xfc\xcc\x94\xd2\xbc\x37\x55\x05\xa4\x17\x4a\x3f\xdc\xcf\xf5\x5d\x78\x66\xdd\x1a\xf5\x42\x85\xba\x52\x5a\xac\x6c\x21\xd4\x4d\x23\x9b\x7b\x4f\x28\x18\xdb\x94\xd2\x3b\x20\xb6\xe8\x42\xb1\x3d\x2a\x87\xa2\x18\x44\x67\x4a\x1d\x22\x19\x17\x1b\xa8\x81\xf5\x42\x7d\x3f\x82\x36\x22\xfe\x44\x10\xce\x1c\x7a\x97\xb1\xb7\x40\xc7\x4d\xaf\xd9\x78\xbf\xb5\x85\x11\x8b\x6e\xf6\xc4\xe8\xba\x5e\x4f\x58\x36\xc5\x8d\xbd\x46\x36\xdc\x39\x9a\xed\x3e\xcc\x82\x99\xf8\x05\x4e\x02\x08\xce\xe5\xd0\x8f\x2c\xc9\x6f\xa5\x34\x7a\xa0\xc8\xfc\xa5\x0c\x6e\x3f\xa7\xc0\xbb\xae\x8d\x80\x3d\x3a\x06\xee\xa1\x95\xd2\x0f\xf3\xf9\xe0\x91\x52\xba\x04\x2e\xc8\x7a\x69\x23\x4c\x88\x62\x39\x26\x67\x2e\x60\x4a\xe9\xf7\x04\xeb\x80\x78\x37\x2b\x61\x6d\x9d\x0d\x0c\x3c\xf3\xab\x20\x2b\x95\xf6\xb5\x95\xa3\x7b\x04\x87\xec\xda\xf9\x90\xd8\xf0\x86\x4c\x0d\x02\xd4\xa5\x7b\xfc\x0c\x0c\x38\x53\xc7\xc9\x58\x61\xf9\x32\x54\x6f\xdd\x58\x85\xe0\xb9\xb1\x04\x21\x48\xa1\x06\xfe\x81\xeb\xe7\x06\x58\x6e\x31\xbd\x4c\x4c\x8b\xa9\x86\x76\xe3\x7b\x7e\x04\xda\xd9\x22\xc9\x70\x99\xa5\x34\x6d\x6e\xdd\x50\xb1\x18\x69\xd2\x01\xd0\x15\xfc\x7e\x9a\x1e\x8f\x88\xb7\x35\x47\x47\x51\x53\x27\x68\x6a\x98\xe7\xb5\x91\x08\xea\x2e\xee\x37\x06\x3a\x29\x0a\xe7\x34\x64\x79\xf1\x71\x16\x71\xf5\x04\x85\x9c\x33\x08\x7b\xc2\x03\x89\x1d\x64\xa9\x1b\x06\x6a\xe7\xb7\x97\xf0\x89\x87\x85\xac\xab\xf4\x55\x77\x0c\xb4\x03\xca\x19\xc8\x9a\x6d\xee\x9a\x7a\xd5\xd3\x72\x33\x4f\x01\x24\x93\x70\x04\x46\xa0\xcc\xcd\x24\xb4\xf5\xb9\x83\x49\x48\x87\x79\xb5\x1f\x03\xae\x10\xb7\x60\x5c\x6f\xfa\xf4\x1a\xa9\x8e\x2a\xcf\xe5\xab\xc4\x1b\x64\xc9\x6d\x39\x46\x6d\x9d\x40\xf8\x93\x1a\xa1\xb6\x4e\x3e\x7d\x1c\xf1\xca\xb9\x29\xeb\xb8\x8b\xfe\x8e\xe8\xab\x77\x7f\x7c\x07\xfd\xa7\x01\xf5\x86\x79\x8f\x34\x1a\xe8\x05\xf6\x66\x5b\xed\x3a\x78\x85\x2f\xc1\x1f\x30\xfa\x3e\xfe\x44\xd8\x60\x43\xbd\x32\xea\xa1\xa2\xeb\xbb\xf1\x62\x03\x8d\x29\x0d\x8b\x2c\x3b\x64\xbf\x02\x00\x00\xff\xff\xd3\xe0\x22\x1e\x64\x09\x00\x00")
  70. func templateAuthSwaggerJsonBytes() ([]byte, error) {
  71. return bindataRead(
  72. _templateAuthSwaggerJson,
  73. "template/auth.swagger.json",
  74. )
  75. }
  76. func templateAuthSwaggerJson() (*asset, error) {
  77. bytes, err := templateAuthSwaggerJsonBytes()
  78. if err != nil {
  79. return nil, err
  80. }
  81. info := bindataFileInfo{name: "template/auth.swagger.json", size: 2404, mode: os.FileMode(420), modTime: time.Unix(1506003979, 0)}
  82. a := &asset{bytes: bytes, info: info}
  83. return a, nil
  84. }
  85. var _templateCcdFileTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x54\x8e\xc1\x6a\xc3\x30\x0c\x86\xef\x7e\x0a\x91\x9d\x23\xec\x40\xc6\xf2\x04\x63\x87\x8d\x91\x4b\xcf\x6e\x2c\x27\xa6\xe0\x04\xdb\xa1\x0d\xc2\xef\x5e\x62\x1a\xda\x1e\x04\xfa\x05\xff\xa7\xcf\xd9\x61\xf6\xd6\x8d\xf5\xb2\xc6\x09\x98\x01\x7f\xfe\x21\xe7\xb2\xfd\x51\xfa\xd5\xf1\x02\x39\x8b\x0f\x17\xe6\x35\x11\xa8\xae\x41\xf5\xf9\x85\x9d\x44\x09\x4d\xdb\xe2\x31\x52\x30\x3b\x0b\xd8\x93\x71\x81\x86\xf4\x7d\xda\x6b\x05\x5a\x85\xc7\xad\x1e\x75\xa2\xab\xde\xc0\x90\x55\x70\xde\x16\x1d\x63\x6d\xa6\x61\xa9\x04\x33\x90\x37\x7b\x45\x30\x07\xed\x47\x02\xec\xf7\x8f\xf1\x49\x29\x02\xcc\xce\x1b\xba\x01\x82\x2c\x96\x47\x52\x6f\xa9\xc9\xf9\x95\x79\x0f\x00\x00\xff\xff\x5e\x42\x13\x8e\xe5\x00\x00\x00")
  86. func templateCcdFileTmplBytes() ([]byte, error) {
  87. return bindataRead(
  88. _templateCcdFileTmpl,
  89. "template/ccd.file.tmpl",
  90. )
  91. }
  92. func templateCcdFileTmpl() (*asset, error) {
  93. bytes, err := templateCcdFileTmplBytes()
  94. if err != nil {
  95. return nil, err
  96. }
  97. info := bindataFileInfo{name: "template/ccd.file.tmpl", size: 229, mode: os.FileMode(420), modTime: time.Unix(1504006286, 0)}
  98. a := &asset{bytes: bytes, info: info}
  99. return a, nil
  100. }
  101. var _templateClientOvpnTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x3c\x8e\x31\x4b\x04\x31\x10\x85\xfb\xf9\x15\x03\x36\x5a\xe4\x52\xd8\xc9\x22\x88\x8d\x20\xe2\x55\x36\x62\x91\xcd\xce\xdd\x86\x4b\x32\x21\x99\x0d\xc4\x23\xff\x5d\x76\x57\xae\x7b\xf3\xcd\x83\xef\xdd\xa1\xcc\xae\x20\xd7\x14\xf1\xe4\x3c\xa1\x2b\x68\x16\xe1\x60\xc4\x59\xe3\x7d\xc3\x33\x45\xca\x46\x68\xc2\xb1\xe1\xf7\xe7\xd7\xf1\xe3\xe7\x7e\x16\x49\xe5\x49\xeb\xb3\x93\x79\x19\x0f\x96\x83\xb6\x66\xd2\x5c\x53\x78\x00\xb0\xde\x51\x14\x98\xa8\xa2\x2c\x11\x52\x66\x61\xbc\x5e\xf1\x70\xdc\x52\xef\x90\x29\xb0\xd0\xc6\xde\xb8\x48\x34\x81\xb0\xf7\xbd\xc3\x59\xf6\x4a\x61\x5f\x55\x26\xc9\x0d\x5d\x3c\xb9\xe8\x84\x20\x16\x65\x29\x8b\x92\x96\x08\x0b\xe5\x4a\x19\x22\x8f\x2e\x4e\x90\x28\x17\x57\x44\x5d\xa8\xdd\xf2\xaa\xb7\x1c\x92\xf2\xbf\x0c\x95\xf2\x88\x8f\x60\x16\x99\x55\x64\x6b\xec\x4c\x00\x83\x35\xcf\xb0\x7a\x5f\x5f\xb0\xf7\x41\xaf\xe7\xb0\x2a\xfe\x29\x6d\x6b\x06\xbd\xa3\xe1\x42\x6d\x7f\xbc\x53\xdb\xf8\x06\xfe\x02\x00\x00\xff\xff\x56\x94\xc9\x77\x45\x01\x00\x00")
  102. func templateClientOvpnTmplBytes() ([]byte, error) {
  103. return bindataRead(
  104. _templateClientOvpnTmpl,
  105. "template/client.ovpn.tmpl",
  106. )
  107. }
  108. func templateClientOvpnTmpl() (*asset, error) {
  109. bytes, err := templateClientOvpnTmplBytes()
  110. if err != nil {
  111. return nil, err
  112. }
  113. info := bindataFileInfo{name: "template/client.ovpn.tmpl", size: 325, mode: os.FileMode(420), modTime: time.Unix(1505219439, 0)}
  114. a := &asset{bytes: bytes, info: info}
  115. return a, nil
  116. }
  117. var _templateDh4096PemTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x6c\xd4\x35\x12\xa4\x08\x00\x40\xd1\x9c\x53\x4c\x4e\x6d\xe1\x16\xe2\xee\xde\x19\xd0\x38\x8d\xfb\xe9\xb7\x76\xe2\xfd\xe1\x3f\xc0\xfb\xe7\xbf\x38\x51\x56\xad\x3f\x82\xf2\xc7\x61\x3d\xd6\x14\x03\xd1\xf3\xff\x7e\xc0\x54\x55\x51\x70\x75\x9e\xad\x45\xb6\x2f\xb3\xc9\xd2\xe7\x37\x56\x43\x1c\xa4\x1b\x2d\xac\xa4\x52\xd1\xb4\xbe\xa5\x86\xf7\xd6\x99\x21\xd2\xde\x29\x40\x6c\xec\xf4\x04\x64\x3e\x11\x13\xee\x7e\x38\xf0\xc5\x28\x74\x5d\xa8\x62\x55\x98\x61\x1a\xea\x16\x8e\x9e\xaf\x9b\xd5\x15\x48\x63\x88\xf6\xd1\xa8\x1f\x03\x39\x69\x95\x7a\x63\x88\xe6\x15\x81\x75\xb8\x4a\xdb\x34\x5f\x4b\x1c\xdf\xc5\x06\x57\x17\xc0\xf7\x75\x64\x4a\xc5\x2d\x99\x2d\x90\x54\x89\x30\x0f\x94\x8f\x86\xce\xa5\xda\x3e\x8b\xaa\x8d\x2f\x7c\x14\x4d\xab\xeb\x97\x43\x29\x3e\xd4\xd9\x9e\x62\xf5\x10\x0d\x6a\xcb\xbf\x7c\x5f\xfa\xb5\x77\x01\x52\x8d\x90\x43\x92\xb3\xfa\x3a\xdd\x57\xdd\x33\x6c\xbb\x15\x03\x5d\xe9\xe4\x5e\xb0\x56\x9e\x92\x31\x26\xb3\x57\x2e\x0a\xf2\x73\x82\xf0\x0c\xd7\x9f\xd8\xef\xa7\xfc\x40\xe5\xf0\x9b\xa9\x9b\x42\x02\xdd\xf1\x83\xa0\xe0\x73\x4e\xc7\xd5\x0b\x62\x43\xc2\xc7\x2e\x11\x97\x73\x4d\x8b\xf9\x94\x4c\xd6\x84\x76\x79\xbf\x20\xb5\xab\xd4\x51\x22\xd0\xb0\x96\x60\x63\x64\x61\xec\xb6\xf5\x2b\x96\x04\x99\x03\x95\x47\xc4\xe1\xc7\x6b\x2e\xab\x66\xde\x60\xac\x67\x29\x30\x92\x96\x55\x31\x46\xa3\x6f\x25\x0f\xdb\x2f\xd6\x9f\x10\xef\x0b\x0e\xbf\x90\x49\x13\x9a\xf1\xc3\x3f\x06\xb7\xf9\xfe\xb7\x40\xd4\x6e\x01\x66\x8f\xa4\x08\x8e\x5b\x8c\xcb\x9f\xf0\xc9\xb6\xa0\x09\x09\x6a\x33\x15\x30\x08\xbb\xfd\xac\x4f\xfc\xd0\x38\x7d\x5b\x48\x07\xe3\x3b\x2a\x63\x6b\xd0\x7a\x03\x72\x20\x5a\xd6\xec\xa7\xcc\x9e\x30\x07\xe6\x25\x22\x07\x29\x4c\xa4\x09\x49\xba\x7e\x88\xdd\xad\x58\xd0\xfa\x3a\xf4\xf3\xa2\x12\xfe\x0b\x3b\x63\x9a\x7d\xe1\xf5\x36\xa2\x1c\xca\x8c\x27\xd5\xdf\x13\x2f\x56\x83\xf0\xbc\x0d\xba\xed\xa2\x02\x6c\x54\xc0\xa0\x09\x1f\xbe\xd8\x18\xbb\x44\xcb\x11\xad\x82\x53\xbc\xcc\x0e\x63\xe6\x41\x70\x27\x10\xb5\x3c\xda\x12\xfd\xab\x2d\xf9\x26\x71\xc7\xe4\xc0\x98\x70\xcb\xfe\xfd\x40\x59\xf6\xdb\x18\x1d\x30\xe1\x62\x4f\x14\xea\x8c\xbe\xee\x59\x80\x2b\x4d\xea\xc2\x0e\xa9\x6e\x32\xcd\xc7\x34\x25\x88\x8e\xf7\xbf\x66\x09\xbb\x3e\xd6\xd6\x6e\x87\xc3\x33\xf2\x66\x74\xeb\xd5\xd4\xb7\xc4\x72\xe8\x58\x18\xb0\x8c\x92\x87\x7a\x38\xe5\xe0\xd5\x8a\x3f\x37\x16\x7a\x35\x96\xf8\xd0\x09\x4f\x9a\x0d\x3a\x3b\x64\x13\x21\xda\x1e\xd3\xac\x7c\x66\xf4\x88\x1b\xc6\x28\x5d\x70\x69\x37\xbe\xae\x55\x56\xdb\x7f\x27\x80\x2b\x14\x4a\xd9\x50\x26\x14\xfb\x83\x14\xb4\x8e\xa1\xb3\x2e\x3f\x3f\xd0\x90\xb9\xfb\x66\xc6\xe3\x30\x83\x6e\xce\x08\x0b\x8a\x2f\xe8\xda\x95\xc2\x8d\xf5\x68\x42\x94\x6f\x3f\xca\x13\x67\x27\x05\xc0\x64\xa4\x4a\x11\x14\x5e\x69\xd2\x71\x89\xaf\x5b\xe2\x39\x8e\x47\x69\x0f\xee\x20\x33\x1b\xf7\xc6\x05\xd0\x8a\x91\x6e\x8b\x94\xd2\xb3\xa6\xb5\xd9\x4c\xad\x51\x77\x55\xad\x21\x7b\xb6\x26\x22\x03\x28\x1a\xd9\x19\xda\x0f\x12\x54\x7d\xba\xaf\x83\x48\x3c\x25\xbc\x90\x54\xa3\x74\xa1\x5b\x2e\x44\xfd\xc8\xa5\x29\xc6\x4d\x78\x6f\xcf\xe9\x3c\xf2\xd9\x3e\x7c\xab\x38\xf9\x6f\x3d\x2d\xed\xd5\x46\x07\xa0\xda\x1a\x19\xcd\x3c\x57\x5a\x88\x1d\x40\x87\xd1\x91\x6a\x5a\x3d\x96\x00\x23\xbb\x22\xaa\x33\x70\xf6\x85\xfc\xdd\x93\x4b\xd0\x44\xc1\xaf\x46\x8a\x89\x8b\x5b\x82\x95\x33\x84\x6f\xc1\x19\x50\x0e\x54\x66\x34\x5e\x0c\x9c\x53\x9b\x1b\xa9\x8c\x28\x26\xf7\x3c\x13\xe8\xa1\xa6\xcc\xbd\x07\xef\x56\x65\x3a\x26\x9f\xd8\xfc\x0b\x4a\x49\x2c\x8b\xe7\x9b\xa1\x90\x7d\xd1\x93\x9c\xbe\x53\x3e\x12\x3e\x0b\xd8\xcc\x2d\xce\x05\xfa\xb3\xc2\xc1\xb6\x02\x7c\x6f\x38\xa7\x81\x30\x2b\x75\xe4\xcf\xa8\xb6\x42\x6a\xd1\xa7\xd2\xe9\xad\x3f\xa6\x45\xea\x6d\x79\x3c\xdf\x67\x20\x7e\x3c\x4b\xec\x55\xb2\x21\xbe\x11\x40\x63\xe2\xb9\x59\xa6\x3d\xc9\xf4\xf7\xd0\xdc\x66\x38\xdc\xbb\xcf\x60\xbb\x91\x6a\x38\x0c\xe4\xa6\x2c\x10\x24\xd9\xe0\x36\xd8\x5b\x9a\x3f\x47\x7b\xd6\x97\xa7\x46\xcf\x64\xb0\x47\x58\x65\x70\x07\x50\xa3\x82\xbd\x64\x78\x9e\x8d\x91\x76\x1e\x6c\xe3\xd6\xd4\x26\x14\x89\x98\xfd\x7d\x9a\x45\x27\x28\xca\x67\xe0\xfd\xbe\xb7\x03\x0c\x19\x22\x5d\x64\x0f\x3c\x30\xb9\x55\xfc\x34\xcc\x8d\x8e\x6a\x04\xb0\x8a\x7c\xbb\x51\xd0\x97\xcb\x4d\x1f\x54\xcf\x28\x35\x8c\xee\x09\xa3\xfc\xc8\x8b\xce\x24\x89\x8a\x79\xc7\xd0\x34\xa3\x04\xcd\x58\x19\xec\x7d\xc6\x79\xb2\x9c\x21\x47\x1a\x0b\x52\x10\xfd\x89\x01\xea\x98\x67\x1d\x43\x35\xa9\xbd\xc8\x99\xd6\xf7\x63\xee\x77\xd4\x7e\xbf\x44\xd3\xc0\xd6\x46\x9e\x40\x01\x43\xf8\xf7\x78\x8e\x78\x71\x15\x4d\xbd\xd7\xdb\x64\x47\xe8\x60\x85\x3b\xcd\x70\x74\x5f\x01\xe9\x6e\xca\xfc\x55\xbd\x3a\x07\xc7\x1b\xe6\xc7\x18\x92\x3d\x07\xd3\xbd\x42\xfd\xa8\x2b\xd8\x6e\xdd\xd2\x23\x19\x65\xfe\x45\x17\xf8\xeb\xb0\x68\x09\xff\xa7\xf3\xbf\x01\x00\x00\xff\xff\x2c\x8e\x5a\x0b\xbc\x05\x00\x00")
  118. func templateDh4096PemTmplBytes() ([]byte, error) {
  119. return bindataRead(
  120. _templateDh4096PemTmpl,
  121. "template/dh4096.pem.tmpl",
  122. )
  123. }
  124. func templateDh4096PemTmpl() (*asset, error) {
  125. bytes, err := templateDh4096PemTmplBytes()
  126. if err != nil {
  127. return nil, err
  128. }
  129. info := bindataFileInfo{name: "template/dh4096.pem.tmpl", size: 1468, mode: os.FileMode(420), modTime: time.Unix(1503644422, 0)}
  130. a := &asset{bytes: bytes, info: info}
  131. return a, nil
  132. }
  133. var _templateIptablesTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x01\x00\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00")
  134. func templateIptablesTmplBytes() ([]byte, error) {
  135. return bindataRead(
  136. _templateIptablesTmpl,
  137. "template/iptables.tmpl",
  138. )
  139. }
  140. func templateIptablesTmpl() (*asset, error) {
  141. bytes, err := templateIptablesTmplBytes()
  142. if err != nil {
  143. return nil, err
  144. }
  145. info := bindataFileInfo{name: "template/iptables.tmpl", size: 0, mode: os.FileMode(420), modTime: time.Unix(1503644422, 0)}
  146. a := &asset{bytes: bytes, info: info}
  147. return a, nil
  148. }
  149. var _templateNetworkSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x98\x4d\x6f\xdb\x3c\x0c\xc7\xef\xfe\x14\x82\x9e\xe7\x58\xd4\x5d\x8f\xb9\x15\x2b\x30\x0c\x18\x76\xd8\xba\xd3\x10\x14\x8a\xcd\x24\xea\x1c\x49\x95\xe8\x14\xc5\x90\xef\x3e\xc8\xef\x72\xec\x24\x76\xda\x4c\x83\x7b\x72\x23\x92\xe1\x9f\xf9\x99\x12\xf5\x3b\x20\x84\x9a\x17\xb6\x5a\x81\xa6\x33\x42\x6f\xaf\x6f\xe8\x95\xfd\x8c\x8b\xa5\xa4\x33\x62\xd7\x09\xa1\xc8\x31\x01\xbb\x2e\x00\x5f\xa4\xfe\x75\xad\xb4\x44\x99\x59\x12\x42\xb7\xa0\x0d\x97\xc2\xae\x17\x8f\x44\x48\x24\x06\x90\x06\x84\xec\xb2\x78\x26\x5a\xc3\x06\x0c\x9d\x91\x9f\xb9\xd3\x1a\x51\x95\x01\xec\xb3\xb1\xb6\xf3\xcc\x36\x92\xc2\xa4\x8e\x31\x53\x2a\xe1\x11\x43\x2e\x45\xf8\x64\xa4\xa8\x6d\x95\x96\x71\x1a\x9d\x68\xcb\x70\x6d\x6a\x51\xe1\xf6\x43\x58\xe8\x09\x99\x31\x32\xe2\x0c\xa1\x5a\xb6\xf6\xd2\x60\xe3\x7f\x42\xa8\x54\xa0\xb3\xc8\x9f\x63\xab\xf6\xae\xf2\xba\xaa\x6d\x34\x18\x25\x85\x01\xe3\xb8\x12\x42\x6f\x6f\x6e\x5a\x1f\x11\x42\x63\x30\x91\xe6\x0a\x8b\xfa\x35\x02\x65\xcb\x59\xd9\xd8\x9e\x1b\x21\xf4\x7f\x0d\x4b\xeb\xf1\x5f\x18\xc3\x92\x0b\x6e\x23\x98\x50\x2d\xbe\xe6\x8a\xaa\xd4\xbe\x15\xe9\x50\x27\xc0\x2e\xe8\x7a\xde\x35\x64\x28\xa6\xd9\x06\x10\x74\x5d\xda\xfc\xaf\x25\x40\xb0\x4d\x46\xc6\x42\xc6\xaf\xed\xec\xb9\xe8\x5b\xd1\xf0\x9c\x72\x0d\xb6\x8a\xa8\x53\x78\x07\xd5\xcf\x29\x18\x3c\x45\xf4\xbc\x21\x1a\xd9\xaa\x2d\x97\x16\xa1\xbf\x83\xde\xf2\xa8\x51\xc6\x79\xd0\x8c\x54\x94\xce\x81\x2a\xd2\x30\x94\xa8\x8f\xb9\x8b\x77\x38\xe5\x79\x4d\x8a\xa5\x52\xb2\x07\x20\xc5\x90\xc0\x40\x90\xee\x73\x17\xef\x40\xca\xf3\x9a\x14\x48\xa5\x64\x1f\x40\xe2\xa3\xf6\xb9\x7b\xee\xef\x46\x57\xe7\x36\x2d\xa8\xb8\x57\x5b\xdd\x0a\x90\x25\x09\xbe\x2a\x87\x86\xe3\x64\x7d\x02\xbc\x4b\x92\x87\xcc\xcf\x3b\xb4\x1a\xc9\x4d\x8a\x2d\x47\xb7\x27\x70\x95\xb4\xc7\xa9\xc9\x8b\x39\x8c\xb1\xca\xfd\x47\xe6\xee\x25\x6a\x6e\x8e\x93\x23\xae\x2d\xdf\x03\xf0\x12\xee\xa0\x75\x1c\xb5\x2f\xd6\xc1\x3b\xb8\x6c\x56\x93\xc2\x29\x17\x7c\x69\x80\xaa\xbb\x8e\x46\x4e\xf5\x6d\x43\x95\x5c\x13\x28\xbb\x61\x5a\x1d\x72\xf1\x04\x51\x4d\x0e\x55\xda\x82\x85\xbc\x05\x4e\x59\x65\x07\xa5\x32\x86\x41\xcd\xc5\x8a\x76\xfe\x8a\x11\x8f\xf5\x18\xbf\xc2\x66\xf8\xf7\x65\xb3\x53\xfc\xc8\x70\x8c\x77\xdd\xec\x1f\x6d\xb7\xb7\xa2\xf7\x5e\xa0\x32\x0e\xd3\x9a\xb9\x58\x51\x8e\xb0\x69\xdb\x1f\xf8\xe6\x3e\xf2\xb7\xbc\x8d\x5e\x7f\xf2\x9d\x9d\xa4\xff\x56\xe2\x2f\x10\x50\x16\xf2\xed\x25\x15\x7d\xa5\x5f\x53\x77\x04\x77\xbc\x9e\xc0\x3b\xf1\x76\x3c\xb5\x2e\x63\xce\xa9\xdd\x5e\x4b\x22\x27\xb4\xd7\x93\x13\x75\x27\xdf\x4b\xfd\xc6\xa7\xe5\xe4\x7f\xf1\xf6\x26\xbc\x7f\xbf\x6d\x74\x0c\xeb\x43\xfb\x46\xc7\x70\x72\x56\x88\xf3\x39\x68\x4f\xbd\x64\xdc\xfe\x74\x84\x1b\x9b\x6e\xcf\xa6\x75\xb8\xe6\xfd\x67\x6b\x3f\x5e\xc8\x03\xa3\xcf\x19\x09\x5e\xfa\xe0\x70\x58\x63\xf3\x40\x3a\x94\x56\xe7\xf4\x7e\x7e\xbb\x7a\x7f\x52\x47\x55\xe8\xc1\xdd\x55\x47\xbd\x84\x63\x1a\x9c\x3b\x73\x8d\xe1\xd9\x1e\xfb\x83\x5d\xf0\x27\x00\x00\xff\xff\x8e\x36\x29\x5f\x4a\x1d\x00\x00")
  150. func templateNetworkSwaggerJsonBytes() ([]byte, error) {
  151. return bindataRead(
  152. _templateNetworkSwaggerJson,
  153. "template/network.swagger.json",
  154. )
  155. }
  156. func templateNetworkSwaggerJson() (*asset, error) {
  157. bytes, err := templateNetworkSwaggerJsonBytes()
  158. if err != nil {
  159. return nil, err
  160. }
  161. info := bindataFileInfo{name: "template/network.swagger.json", size: 7498, mode: os.FileMode(420), modTime: time.Unix(1506003979, 0)}
  162. a := &asset{bytes: bytes, info: info}
  163. return a, nil
  164. }
  165. var _templateServerConfTmpl = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\x94\x5a\x5f\x6f\xdb\xb8\xb2\x7f\xd7\xa7\x18\xd8\x0f\x4d\x00\x5b\x71\xdc\x76\x4f\xbb\xb9\x7f\xe0\x4d\xdc\xad\xb1\xad\xe3\xdb\x38\xdd\x5d\x60\x5f\x68\x69\x6c\x11\x96\x48\x2d\x49\xd9\xf5\x39\xd8\xef\x7e\x31\x43\x52\x92\x93\x74\x0f\x4e\x81\x22\xb6\x44\x0e\xe7\xff\xfc\x66\xe8\x9b\x5a\x1b\x07\xd7\xd7\xef\xdf\x24\xfc\xe9\x5f\xff\x82\x74\x45\x1f\xfe\xfa\x2b\x49\x86\xb0\xbe\x5d\x81\x36\xf0\x78\xb7\x02\x8b\xe6\x80\xe6\x7f\x93\x9b\xda\x68\xa7\xc1\x65\x75\xe2\x3f\xf1\x16\xfe\xe4\xf7\x0c\x72\x3c\x80\x6b\xd4\x00\x8e\xb2\x2c\x21\x33\x28\x1c\x82\x00\xa3\x1b\x87\x39\x2c\x56\xf4\x52\x61\x39\x6a\xd7\x8a\xfa\xc9\x5a\x05\xe8\x0a\x34\x0a\x5d\x58\x9b\x26\x43\x78\xb4\xd8\xae\x9f\x0c\x40\x6e\xe1\xa4\x1b\x10\x06\xbb\xc5\x1b\x23\xf3\x9d\x54\xbb\x64\x08\x42\xe5\x50\x88\x03\x42\x6d\xd0\x93\xcd\x41\xf0\x56\x38\x48\xe3\x1a\x51\x82\x54\x0e\xcd\x56\x64\x18\x96\xf3\x6e\xcc\x41\x3a\x38\x4a\x57\x10\x79\xd3\xd1\x6e\x57\x13\x2f\x0b\x7f\xf8\x51\x28\x07\x4e\x43\xa6\x95\x33\xba\x04\x91\x65\x68\x2d\xd4\xba\x94\x99\x44\x9b\x0c\x41\x1f\xd0\x80\x2b\x10\xbe\xae\x96\x23\xde\x53\x35\xd6\x45\x41\xb7\xd2\xe0\x51\x94\x65\x32\x04\xd3\x94\x68\x61\xab\xfd\x6a\xfa\xbf\x7e\x5c\x5e\xad\x67\xab\xf3\x83\xef\x15\x28\xad\xc6\xbf\x4a\x95\xeb\xa3\x05\x7b\xb2\x0e\x2b\xeb\x29\x67\x42\xc1\x4e\x1e\xbc\x38\x80\xdf\x6a\xe2\xc2\x41\xa3\xa4\x03\xd5\x54\x1b\x34\x23\xb0\x4d\x56\x80\xb0\xa4\xd6\x49\xa0\x17\x68\x8d\xa0\x09\x0a\x1e\x2b\x9d\xe3\x20\xf0\x22\x6d\x58\x56\x69\xeb\xba\xf3\x82\x48\xde\x6c\x4a\x3b\xd8\x36\x2a\x73\x52\xab\x64\x08\x8d\x2a\x49\x0b\xc4\x52\x2d\x8c\x93\xa2\x2c\x4f\xe4\x45\xdb\x86\x3e\xe4\xd2\x8a\x4d\x49\x4c\x12\x8d\xa8\x81\x56\xf2\x17\xa4\xbe\x09\x46\x4f\x82\x63\x91\x93\x45\x05\x28\xc4\xdc\xfa\x8d\xb3\x15\xa9\xe5\xf5\x14\x44\x2e\x6a\x87\x06\x94\xa8\xe8\x98\xad\xd1\x15\xaf\x58\xa2\x3b\x6a\xb3\x87\x5b\xad\x14\x32\xb3\x16\x6a\xa1\xb0\x0c\xbe\x94\x0c\xbd\xc7\x54\xda\x90\x05\x84\x02\xad\x30\x05\x12\xfe\xb7\x15\x3c\xac\xa6\x24\x44\x21\x77\x05\x1a\xf2\x5d\x36\xa6\x38\x31\x0b\xe4\x04\x16\x4b\xa2\x7a\xc0\x4e\x48\x3a\xb6\xc7\xec\x73\x61\x67\xab\xc8\x2d\x69\x79\xf9\xdc\xb2\xd0\xd8\x86\xf5\x97\x6b\xf5\xca\x85\xb3\xd8\x28\x37\xd1\x52\xf0\xf9\xb4\x16\x35\x29\xe5\xe1\xe1\xd3\xd5\xfa\xd3\x03\x18\xad\x1d\x64\x68\x9c\xdc\xca\x8c\xfc\xec\x22\x13\x97\xa3\xfe\x93\x64\x08\x17\xf4\xf5\x72\xc4\x9e\x5f\x1b\x79\xa0\x75\x7b\x3c\xc1\xc5\x1e\x4f\x97\x29\xc0\x5c\x64\x05\x64\xa5\x44\xe5\x42\x7c\x10\xc7\x3e\x0b\x78\x27\x66\x65\xb9\x02\xa5\x01\x7d\x54\x4c\x9e\xd6\x25\x43\xa6\xb3\x95\x25\x29\x6f\xdd\x6d\x22\x1a\x24\xbd\x27\x6a\xd9\x77\xc8\x5d\xac\xf7\x77\x2b\x2a\x84\x4c\xf8\x8d\xc9\x90\xe4\x41\xff\x66\x80\xc2\x9e\xc6\xc6\x8a\x01\xe4\xd2\x60\xe6\xb4\x39\xb1\x0e\x05\x91\x0e\x81\xb6\x05\x9b\x19\x59\x3b\x1f\x44\x3b\x54\x68\x84\x93\x6a\x07\x5f\x1e\x66\x7d\xd1\x6d\x90\xa6\x27\xb3\x4d\x01\xbe\x60\x85\x14\x22\x64\xc9\xc6\x72\x0c\x51\xe4\xfc\xd9\x20\xdc\xea\xaa\xd2\x0a\x96\xc4\x5f\xb4\x9c\x17\x29\x90\x42\x52\x95\xde\xf2\x0b\x2f\xdc\xd9\x81\x5e\x98\x99\x3a\xc1\x6f\x6f\x27\xef\x59\x39\x95\x50\x62\x87\x15\xad\xf4\x86\xe6\xe0\xdd\x20\x1d\x9d\x73\xc0\xd5\xa8\x28\xbe\xe8\xb1\x28\x2d\xf3\x04\x02\x56\xbf\xdc\x3e\xc0\xf0\x7a\x4a\x7c\x54\xc2\x51\x52\x8b\xba\x26\x93\x5a\x44\x18\xd4\xfb\xcc\x5e\x4f\xa3\xaa\xe4\x01\x41\x2a\x3a\x10\x6a\xb1\xc3\xcb\x34\xb9\xc9\x04\x44\x85\x5e\x91\xf4\x57\x99\x48\x33\xe3\x92\x1b\xb6\xe0\xf9\x2b\x2f\xa7\x7f\x4d\x27\xbd\xf8\x96\x5e\xc0\x10\xd6\x85\xb4\xcc\x0a\xd8\x42\x37\x65\x4e\xf2\xec\xb1\x76\x60\x29\x03\xbb\x24\xc9\x04\x17\x8b\xdb\xd9\x2d\x1a\xb7\x12\xae\xa0\x8a\xc1\x87\xf2\xe3\xde\x43\xa2\x48\xcf\x7e\xc1\x53\x7c\x94\x0c\xe1\x4e\x6e\xb7\x12\xa1\xc0\xb2\xf4\xf2\x18\x51\xa1\x43\xc3\x29\xea\x67\x6f\x71\xf4\x69\x9b\x1c\x92\x92\xf8\x8f\xc9\x10\x00\x74\x8d\xca\xda\x12\xf2\x82\xf7\xc0\x58\x37\x0e\xf2\xe2\x7a\x32\x7d\x93\xd6\x58\x01\x7d\x20\x7f\x6b\x36\xd6\x49\xd7\x38\x84\xe9\xe4\xcd\x3b\x36\x36\xbd\xea\xd7\x9a\xc6\xfa\xfa\xc2\x0b\x36\xd2\x79\xff\x49\x86\x79\xd1\x23\x98\xdc\xe4\xc5\x13\x55\xe5\x05\xed\xe0\x97\x79\xc1\xb2\xdd\x7d\x5c\x11\x33\xb6\x27\x60\xcc\x50\x4e\xd7\xba\xd4\xbb\x13\xf1\xd4\xaa\xd2\x36\x1b\xaa\x43\x17\x22\xcf\x0d\x5a\x62\x03\x0e\x52\xc0\x62\x75\xd9\xe5\xdc\x98\x3d\x62\x88\x1d\xa6\xe9\x24\x7d\xcf\x4e\x5a\xea\x23\x9a\x10\xb3\x3a\x19\x7a\x8a\x35\x15\x7d\xcc\xe1\xc2\x15\xa8\x40\xa1\x7b\x3d\x19\x81\x4c\x31\x05\x01\x57\xaf\x27\x50\xa3\x09\xb4\xe8\x90\x3b\xdc\x8a\xa6\x74\x96\x62\x84\xd7\xc2\x05\xa5\x7e\x83\x99\xae\x2a\x54\x39\xe6\x97\x49\x64\x3d\xb0\x4b\x52\xdd\x6a\xb5\x95\xbb\xc6\x74\xd9\x83\xb2\x16\xf1\x44\x0c\x94\x27\x10\x5c\x4a\xc2\x86\x21\xab\x3d\xfa\xbf\xd3\x90\x1b\x71\x8c\x61\x15\x64\xa7\x4a\x69\x74\x45\x66\xef\xe5\x17\xae\x45\x4e\xec\x11\xae\x27\xe9\xbb\x74\x92\x5e\x33\x29\xe9\x2c\x96\xdb\x51\x28\x38\x06\xad\xf3\x2b\x37\x08\x95\x20\x46\x0e\x42\x96\x3e\x5b\xeb\xa8\x38\xa2\xdc\x4b\x80\xed\x86\xb8\xcc\x70\xc8\x9f\x25\x02\xad\xda\x63\x53\x4e\x19\xb4\x8f\x52\x35\x94\x52\x21\x90\xc7\x75\x6e\x94\x0c\x9f\x83\x96\xb4\xcd\x77\x31\x58\x99\x7d\xae\x46\x52\x6d\x75\x9a\xdc\x04\x41\xc3\x39\x13\x98\xbe\x7d\x9b\xc6\xff\x93\x24\xbc\x25\xdf\x5a\x22\x21\x38\xfe\xf8\x59\xd8\x7d\x70\xaf\xcf\x42\x2a\x27\xa4\x22\x30\x86\x99\x36\x39\x25\xad\x20\xe1\x7f\x8d\xff\xa7\x05\x46\x8b\x55\x54\x34\x25\x38\x6b\x75\x26\x85\x2f\x97\x52\x79\x91\x42\x72\x5f\x6c\x5b\x43\xed\x34\x5a\xc8\x29\xec\x34\x69\x43\x5a\xd6\xb4\x20\xef\x1a\xf1\x69\xbe\xe6\xaa\x5d\xeb\x9b\x21\xe3\x09\x6b\xe5\x4e\x61\x1e\xec\xc3\x55\xe0\x39\x23\x5d\x15\xaf\xb5\x2e\xa9\x3a\x3b\x38\x0a\xe2\xaf\x36\x78\x90\xba\xb1\xe4\x47\x81\x54\x9a\xc8\x6d\xc6\x4e\x37\xa6\xd5\xe3\x1a\x8d\x95\xd6\x81\xac\xeb\xd4\x7d\xfb\x1b\x9f\x24\x7d\x3f\xb7\x4b\x32\x84\xdf\x23\x70\xdb\x4a\x63\x1d\x27\x63\x4e\x33\xf7\x0f\xaf\x6c\xbb\x10\x32\x51\x8b\x8d\x2c\xa5\xa3\xc0\x75\x3a\x00\xca\xb6\xd2\xb7\x90\xc6\xc3\x4b\x7a\x1c\x0f\xa3\xd8\x5f\xdc\xf6\x40\x0f\x17\x4e\xd5\x01\xc6\x4a\x28\x8f\x03\x2c\x61\x62\x46\x15\x8b\xd5\x95\x42\x57\x91\x79\xb5\x62\x6a\xe1\xbc\x96\xca\x08\x0a\x34\x08\x47\xf4\x66\x6c\xaa\x36\x32\xde\x5c\x9d\xb9\x4e\x0a\xf0\x41\x2a\xa6\xcf\x8b\xf9\x48\x3a\x49\x58\xc9\xa1\x4a\x96\x30\x42\x31\x71\xef\x01\x6d\xb4\x5e\xb0\x95\xff\x3b\x10\x7e\x3b\x01\x54\x79\xfc\x76\x3d\x99\x5c\x92\x22\x44\x59\xea\x00\x3b\x3c\x5a\x7e\xe2\x0b\x29\xc0\x27\xf4\x68\x22\xc6\x8b\x4f\x29\x8e\xfd\x82\x62\xa7\x07\x2a\x5f\x84\xfc\x6d\x74\x8c\x83\x16\xa2\xa4\xe7\x41\x02\x1d\x9f\x1d\x8f\xff\xa1\x43\x30\x66\x21\xee\x05\xdc\x7d\xbc\x5d\x8d\x6b\xa3\xbf\x9d\x46\x70\x64\x65\x47\xef\x76\xa2\xdc\x7b\x71\xc9\x32\x31\x4a\x02\x8b\xac\x55\xda\xdb\xa5\x0f\x4e\x2a\x19\xca\x16\x52\xf5\x7c\x3f\xa8\xcf\xa3\x6b\xca\x9b\x77\xcb\x87\x16\x54\xc5\x8c\x98\xc2\x0b\x5e\xea\x61\xea\xf7\xfd\xf4\xb9\x97\x52\xec\x7e\xdf\x4f\x9f\x78\x29\x63\x56\x87\x3f\x7a\xbb\xb1\xc6\xb4\x22\x27\xd2\x66\x6f\xc9\x2b\xa3\x36\x2e\x42\xdf\xd1\x81\xe1\xcb\xa8\xb0\x0e\x34\x79\xb5\xf4\x30\x31\x48\xda\xb0\xd1\x8d\x62\x80\xed\xd5\x1d\x16\x3f\xb5\x37\xd9\x70\xd5\xd8\xc2\xb7\x99\x36\x2a\x3e\x64\xb7\xe0\x83\x47\x90\x2e\xea\x9a\x31\x1b\x89\xd5\x22\x41\xef\xd2\x16\x36\x58\x48\xd5\xe6\x23\x0f\x71\xfa\x00\x91\x72\x8f\x2b\x90\xb5\xfb\x74\x2f\x17\x0a\x06\x6c\x04\xd5\xfd\x59\x7b\xa5\x8f\x7c\x26\x71\x76\xe6\x0e\x1d\xbc\x0e\x96\xe6\xe4\x76\x11\xf3\xfb\x79\x90\x52\x05\xde\x88\x6c\xff\xb2\x4f\xa5\xc9\xd0\xd3\xbf\x7e\x3f\x4d\xaf\x7f\x78\x97\xbe\x7f\x56\x20\xa2\xc7\x4f\x9f\x2d\xbd\xfe\xde\xd2\xb7\xcf\x96\x4e\xbf\xb7\xf4\xf5\xb3\xa5\xaf\xbf\xb7\xf4\x4d\x32\xac\xc9\x54\x83\xb0\xe1\x1f\xb4\x81\x02\xf1\xe9\x86\xc1\x93\x85\x81\xf2\x0f\x2f\x2d\x84\xb5\x0e\x05\x00\x6c\x8d\x19\x81\xef\x5e\x0c\x79\x8f\x88\x2f\x92\x61\xeb\x99\x04\x10\xb6\x20\x9e\x27\x25\x28\x84\x05\x11\x0d\x9c\x0c\x23\xfe\xf2\xde\x01\xd2\x79\x47\x08\x50\x97\x4d\xce\xe0\x8a\x4c\xe2\xe7\x00\xa3\x7e\x73\xd3\x6c\xba\xd6\x65\x90\x65\xb9\xef\xaf\xa3\xe3\xf7\xf8\x0a\x79\x88\xc3\x9d\xeb\xac\xf5\xb8\xfe\x65\x50\x70\x99\x92\xe3\xcf\x7f\x9b\x7d\x5e\x7d\x9a\xff\x08\x0f\x84\xe8\x6c\x3f\xa8\x7c\x53\x4b\x62\xf1\xb3\x5e\x53\x98\xf9\xb6\x86\xba\x64\x18\xac\x0b\x2c\xb5\xa2\x3a\x4a\xaa\x0c\xd2\x90\xfc\xb6\xa2\x96\xed\x5c\x76\x0a\xf6\x4e\x5f\x54\x2f\x44\x56\x48\x85\xdd\x78\x21\x5a\xea\xcd\x24\xbd\x9e\xbe\x3b\xf3\xe3\xe9\x9b\x77\x94\x37\x3e\x50\x8a\x1a\x41\xa3\x42\xa2\xe7\x24\xcf\x51\xc5\xf9\xdf\xfe\x98\x0c\x83\x72\x42\x25\xcf\xa5\x81\x2c\xcb\xff\xbd\x9b\x7b\x50\xa8\xba\xc1\x13\xb7\x24\x59\x96\x5f\x75\x42\xc6\xcc\x16\xaa\x8d\xef\x12\xe4\x39\x65\xcf\x3b\x3c\xe1\x3d\x09\x7d\x4e\x08\x74\xca\x29\x1d\xd9\x57\x4f\xf2\x81\x47\xda\x61\x2a\x14\x46\x26\x5c\xda\xa5\x05\xfc\x26\xaa\xba\x44\x4f\xa8\xcd\x9a\x94\x7e\xbb\x66\x83\x18\x92\x6a\x37\xe2\x09\x4b\x4c\xdf\x01\xa0\x77\x48\xd2\x17\xa3\x6e\xec\x46\x15\x62\xe0\xb3\x42\xaf\x0b\xb4\x2f\x7b\x4a\x7f\x8c\x15\x86\x47\x3d\x35\x91\xf2\xbe\x61\xce\x4e\xdd\x2b\x48\x7a\x4b\xa1\xfc\x9e\xb1\x6e\xb4\xe5\xdf\x99\xf2\xe6\x65\x53\x3e\x7f\xca\x7d\xe0\xed\x5d\x6c\x89\x82\x25\x45\x9e\xf7\x90\x01\x21\x88\x33\x63\x06\xeb\xb5\x90\x8f\x32\x46\x64\x2f\x7e\x98\x26\x49\x66\xca\xf1\x01\x8d\xdc\xfa\xd6\xf2\xf6\xcb\xa7\xee\x98\x2e\x6e\x84\x3b\x53\x09\x2a\x86\xfc\xb9\xdc\x6e\xd1\xf8\x70\x6a\xa7\x38\x4f\xa6\x7d\x1c\x98\xed\x42\xd8\x19\xdd\xd4\x61\x32\xd1\xc1\x9c\x35\xd7\x3c\xb2\xad\x3b\x6a\xa8\xd0\x15\x3a\x67\x01\x2e\xae\x2f\xe1\x4b\xa3\xa0\x6a\x4a\x27\xc9\x2f\x62\x7a\xcf\x05\x56\x5a\xd9\x11\x68\x15\xf0\x88\xc8\x0a\x96\x18\xfc\x19\x7e\x84\xd3\x72\xf5\xe2\x10\x2d\xac\x8f\xdb\xfd\xc6\x2b\x4f\x1a\x44\x5d\x1b\x5d\x1b\x29\x1c\x96\x27\xb2\xe7\xc5\xf4\x12\x2e\x66\xf9\x41\xa8\x0c\xf3\x4b\xb8\x8d\x81\xe4\x07\x2c\xdc\x93\x9d\x94\xa8\x64\x46\x88\x31\x90\xae\x74\x4e\x9a\x3d\x9b\xe9\x49\x45\x4d\x40\xad\x95\x65\xab\x79\x7d\x45\x56\x08\xcf\x77\xda\xea\x34\xf4\xe0\x73\x5d\x58\xf6\x3c\xe3\x11\xac\x28\x51\x18\x35\x8e\xde\xe8\xd9\x4a\x93\x9b\xf3\xc7\xe9\x95\x7f\x91\xf8\x79\xad\xb7\x64\x3e\xf2\x9e\xd4\x0d\x47\xfc\xe0\x39\xa2\x3f\x4e\x7e\xdd\x88\x8a\x91\x82\x5f\x1b\x60\x59\xee\x7b\xe0\x64\x48\x1d\x30\x37\xeb\x3b\xe1\xf0\x28\x48\x74\xa3\x9b\x5d\xd1\x4d\x7b\x33\x11\x87\x05\x44\x72\xb1\x02\x67\xc4\x96\xca\x52\xcc\x92\x47\xdc\xc0\xc6\xe8\xa3\x07\x93\x0c\x39\x22\xba\x2b\xb5\xde\x37\x35\x33\xb0\xd3\x4f\x49\x93\x89\xd6\xcf\x10\x40\xcc\xc2\x67\x43\xc9\xe5\x6c\x4d\x2e\x68\xce\x50\xde\x53\xef\x88\x88\x82\x1f\x78\x54\x2f\xa9\x8f\xcb\xd1\xb4\x53\x60\x5a\xc3\xe2\x92\xaf\xa0\x29\x4f\x97\x69\x72\x13\x8a\x73\xd0\xd0\x38\x6a\x22\xc7\xed\x35\x6c\x4e\xb5\xb0\x76\x9c\x17\x59\x3d\xf8\x0f\x56\x12\x14\x47\xc3\x5d\x6a\x40\x8a\x6d\x75\x6c\x35\x6e\xd1\x51\x5a\x24\x57\x0a\x4d\x24\x91\xf7\x02\x07\xcb\x75\xa5\xe8\x6e\xf9\xe0\x35\xf0\xeb\xe2\x65\xd4\x7c\x3b\xfb\x3a\x9f\xad\x29\x06\x0b\xe7\xea\x1f\xaf\xae\x74\x8d\xea\x50\xab\x54\xa1\xbb\xda\x8a\x3f\xd3\xc2\x55\xe5\x90\xb8\xcb\xc4\x01\x85\xb3\x61\xea\xd0\x21\x8b\x0d\x52\x19\x30\xb8\xf5\xe3\x43\xee\x52\x9b\x4d\xc9\xf5\xbc\x83\xea\x96\x54\x77\x90\x39\xe6\xb0\x39\xf1\x48\x2a\x57\x36\xcd\x74\xd5\x2a\x92\xce\x18\xeb\x9a\x2b\x3f\xed\x9b\x4e\xde\xa5\x3f\xfc\x23\x9d\x4e\xa7\xf4\x7f\x90\xbc\xbc\x8a\x67\x49\xcb\x07\xf8\xeb\x2f\xd6\xde\x63\x9b\x86\x9f\x38\x7a\x8b\x81\xfb\xc9\xac\xe7\xe8\xbd\xf1\xc6\xc0\x22\x0e\xa0\x83\xc8\x94\x14\x7e\x3a\x45\xdf\x1f\x9d\x4d\x70\x7d\xed\xb2\x61\x74\xd1\x82\x51\x82\x63\x5b\x6d\x32\xec\x1f\xf1\xc2\xd2\x51\x98\xbc\x9f\x03\x67\x66\xb6\x9f\x96\xce\xf2\x1b\x81\x31\xde\xfc\xca\xbe\x74\x5f\x10\xca\x8a\xd3\xe3\x00\x81\xfe\x4e\x2b\x72\xdb\xa5\xdc\xc0\x29\x01\x1a\xb9\x2b\x5c\xc4\x38\x5d\x1b\xe4\x47\xd4\x1d\x86\xba\xda\xe3\x89\x2b\x02\xa1\x34\x82\x73\x1d\xa4\xb2\xb1\xce\xf3\x24\xa4\x1d\x90\xf1\xa0\xa8\xf4\xd3\x6b\x87\x96\xf1\x66\xdd\x18\x2a\x3e\xb4\xe3\x83\xa6\x76\x44\xe7\x0d\x5f\x4f\x10\x7a\x24\x10\x89\xbd\x49\x54\xc0\x9b\x0c\x35\x25\xe1\xd7\x30\x79\x3f\xe7\xa8\x16\xd2\xf8\xb1\xf3\xe2\x03\xfc\x7e\xff\x08\x1f\x67\x5f\xe7\xb0\xbc\x5f\xc3\xcf\xf3\xe5\xfc\xcb\x6c\x3d\xbf\x83\xc5\xf2\x6e\xf1\x75\x71\xf7\x38\xfb\x44\x31\x37\xff\xb2\x5e\x7c\x58\xdc\xce\xd6\xf3\xab\x5f\xe6\xbf\xc3\x6a\xb6\xf8\xf2\x00\x1f\xee\xbf\xc0\x7c\x76\xfb\x11\x6e\x3f\x2d\xe6\xcb\x35\xf1\xc2\x5f\x3f\xce\xbe\x2e\x96\x3f\xc3\x62\xfd\x00\xf7\xbf\x2e\xe1\x71\xb9\xf8\xbf\xc7\x39\x0c\x6e\xef\x3f\x7f\xbe\x5f\xc2\x72\xf6\x79\x3e\xa0\xb5\x8f\x4b\x7a\x32\x5f\xae\x61\xfd\x71\xf1\x00\x9f\x16\xcb\x39\xdc\x3f\xae\xd3\xe4\x26\x6f\xea\x92\xf9\x1d\x67\x7c\x9d\x43\xf1\xb4\x47\xac\x45\x49\x36\xe9\xac\x43\x29\x14\x2d\xd4\x52\xed\xc6\xa5\xdc\xf3\x6c\x02\xad\x15\x3b\x8c\x2e\x6b\x49\x29\xdc\x16\x71\x15\xd4\xc6\x15\x7c\xe9\x16\xda\xb7\x52\xaa\x3d\x58\xed\x0b\x3b\xeb\x91\x9b\x4c\x6a\xc9\x2c\x35\xa0\x2a\xac\xf3\x9d\x20\xbf\x23\xdc\xbb\xa3\x62\x9b\xeb\xa3\x22\x4f\x5e\x91\x91\xf0\x80\xe6\x04\xd7\x13\xb0\x98\x69\x95\xdb\x51\x9c\xa8\x30\x65\x83\x95\xe6\x26\xa1\x46\x6e\x5b\xfd\x24\x4c\x6e\x41\x69\x66\x3e\xf6\xf6\x39\xe4\x8d\x09\x35\x01\xae\xa7\x91\x1a\x38\x59\x21\xd4\x68\xa4\xce\xd3\xa4\x53\xc4\xf5\x84\x16\x91\x82\xc8\x31\xf0\x9b\x33\x82\x76\x34\x86\x5a\xf7\x0d\x9e\x78\x2b\x9d\x1f\x33\x0b\xb5\x88\xa7\x78\x0f\x34\xea\xdd\xa7\x0e\x3e\x7e\x9e\xdd\xb6\x41\x34\xf0\x8d\x69\x81\x65\x0d\x9b\x52\x67\x7b\xb8\xd3\x0f\x20\x9c\x13\xd9\xde\xb2\x22\x1f\xef\x56\xc0\x17\xc2\xdb\x52\xeb\xdc\x4f\xc1\xfa\x43\xf6\xf3\xd9\xfa\xa1\x56\x30\x1e\xef\x50\xed\xf1\x04\xe3\xb1\x9f\xf7\x83\x13\x29\x7b\xe3\xf9\x94\xb6\xbd\x30\x09\x0e\xdd\x5e\x25\xb1\x4e\x32\x5d\x9f\xfc\x55\x8a\xb4\xb0\xc7\x53\x37\xe2\x65\x3d\xb5\x23\xff\xde\x15\xc3\xab\xc9\x2b\x3f\x7e\x75\xe7\x87\xbc\xba\x7e\x15\x9f\xb6\x53\xdd\x1b\x57\xda\xb1\x68\x28\x9c\x99\x39\x98\x9c\xdd\x5b\x48\xdb\xde\x55\x0c\xe1\x81\xef\xf3\x88\x27\x73\xaa\x9d\xde\x19\x51\x17\x32\x83\x4c\xd6\x21\x23\xae\x43\x1f\xb4\x95\x3b\x90\x0e\x2b\x2f\xca\x86\x3a\xab\x5a\x72\x0e\x0b\xce\x15\xef\x84\xfc\x52\x3e\x89\xab\x7f\x59\xa6\xc9\x8d\xa7\x07\x3f\x7d\x18\xdf\xfe\x74\x0b\xe1\xdf\x10\x7e\x2a\xf5\x71\x2b\x6d\x01\x17\x21\xeb\x5e\xb6\x4b\x67\xf3\x87\xf1\xf5\xf4\x5d\x58\x3f\xa4\xef\xed\xbb\xbb\xf9\xc3\x78\x7e\x37\x7f\xed\x5f\x0e\x61\x6d\x28\xb3\x8d\xef\xe6\x0f\x8c\xfe\x3d\x9a\xcd\x74\x55\xf3\x15\x82\x56\x51\x43\x04\x23\x28\x56\x7a\x97\xdb\x01\xfa\x4a\xc7\x53\xc4\xde\xe5\x35\x65\x69\xca\x4a\xed\x7b\xa9\xbe\x23\x66\x9a\xd0\x51\xe3\xf2\x9f\x3a\x06\x79\x25\xbe\xc9\xaa\xa9\xc2\x7d\x34\x63\x63\xad\xb2\xc6\x50\x39\x2a\x4f\x31\xe3\xb2\x23\xb7\x45\x06\x5b\x34\xce\xf5\x2b\x4d\x6e\x2a\xf1\x6d\x1c\x5f\x87\xf9\xdd\xc2\xbd\xa2\x76\x65\xa7\x75\x0e\x32\x47\x11\xa0\x5b\x93\x9d\x4d\x5c\x92\x61\xc0\xd3\xaf\x2c\xb7\x6a\xb2\x44\x4a\x25\x62\xcb\xd3\x26\x25\x9d\x14\xa5\xfc\x27\xf7\xde\xde\xe1\x7f\x0f\xf7\xea\xcd\x79\xfd\xa0\x0e\x87\xa7\x71\x2f\x5c\xc6\xa7\x49\x63\xd1\x80\xd2\x1b\x9d\x9f\x12\x46\xda\xa0\x34\xff\x8d\x5a\x88\x03\x69\x5f\xc5\x43\x1d\x75\x86\xc7\x71\xe2\xa0\x65\xde\x76\x8d\x3c\x8f\x08\x78\xc8\xa0\xd5\x8d\xc9\x90\x27\x6b\x61\xba\xce\x1e\x26\x9c\xc7\x7c\x1a\x4a\xad\x76\x68\xb8\x94\xfb\xed\x64\xa1\x0d\x72\x1a\xf5\xad\x08\x83\x93\x28\x39\xa7\xa9\x9d\x11\x39\xa6\x49\xe0\x69\x4c\x21\x1b\x3f\x87\xcb\xf6\xfb\xc6\xd5\x0d\x45\x82\x2d\x28\x25\x58\x27\x5c\xd3\xdd\xf4\x1d\x7d\x3e\x0b\x46\x6c\x07\x03\xdc\xb3\x38\xd3\x28\x4a\xf3\x11\xda\x1a\x3c\x1a\xe9\x1c\xaa\x90\x4f\x2b\xa9\x1a\x87\x69\x12\x48\x86\x5c\x32\xf6\x5f\xd3\x52\xef\x92\x27\xc8\xa3\xd4\xbb\xae\x02\xb0\xda\x08\x1e\x7b\xcc\x65\x4f\x96\x5e\x5f\xe8\x70\x1d\xd3\xfe\xb0\x41\x6e\xc1\x34\x4a\x31\xca\xb6\xfe\xd2\xf8\x20\x33\xe4\x5f\x31\x9c\x7a\x54\x42\xb8\x0e\xfe\x58\x19\x0a\xf7\x0a\x3e\x50\x61\xff\x23\xf8\xce\x1f\xa5\xde\xf5\x2e\xa0\x2f\xe3\x6f\x52\xe8\x4c\x6d\xe8\xcf\x58\xd4\x84\xea\x18\xe9\x1c\xd0\x18\xaa\x26\x1e\x6e\x78\xf6\x69\xc7\x80\xa9\x04\x83\x7b\xe5\xf8\x42\xa5\x43\x66\xd0\xaa\xc3\xf5\x64\xe1\xa6\xa6\x52\x7a\x2c\xe8\xdd\xa0\x3b\x24\xd0\xe8\x4e\x94\x2e\x05\xe6\x47\x2b\xf4\x80\xb7\xab\x6b\x17\x9b\xc6\xf9\x19\x82\x76\x05\x01\x77\x3a\x2d\xfe\x8b\x70\x97\xb4\x7d\xd3\x93\xe2\xec\x05\xe7\x43\xee\x81\xfa\xb8\x0c\x4a\x3c\x60\x49\x6e\x45\x6b\x3c\x10\x82\x03\x9a\x8d\xb6\xd2\x9d\x7c\x04\x4d\x38\xab\xca\x12\x95\x1b\x01\x7e\xcb\xb0\x76\x8c\x7e\xb6\xc2\x89\x12\xd0\x18\x6d\x08\x71\xbd\xf1\x40\x49\x58\xed\xd3\x4a\x77\x89\x5f\x42\x43\xe6\x4e\x86\xf0\x96\x7d\xe8\x07\x0e\x48\xae\x5d\xd4\x89\xe2\xa6\xd9\xf5\x9c\x8e\x4a\xe1\xa6\xc4\x8a\x68\xbe\x07\x9e\xb3\x38\x83\x15\x41\x48\xcf\x18\x26\xf4\x17\x5e\xb3\x48\xc4\x56\x86\x60\xb0\x46\xff\x63\x81\xe8\x5b\x29\xc0\xcc\xf9\xdf\xbc\x4c\x27\x8c\x37\xff\x6c\x50\x51\x7a\xe8\xdc\x2f\x44\x13\x83\xc2\xf0\x90\x3b\x12\x87\x3b\x6d\x4e\xed\x9d\xa1\xf6\xd1\x13\x9c\xb4\xd4\x3b\x4a\x60\xfe\x8e\x39\xf9\xff\x00\x00\x00\xff\xff\x5b\xf2\x06\xc2\x7f\x25\x00\x00")
  166. func templateServerConfTmplBytes() ([]byte, error) {
  167. return bindataRead(
  168. _templateServerConfTmpl,
  169. "template/server.conf.tmpl",
  170. )
  171. }
  172. func templateServerConfTmpl() (*asset, error) {
  173. bytes, err := templateServerConfTmplBytes()
  174. if err != nil {
  175. return nil, err
  176. }
  177. info := bindataFileInfo{name: "template/server.conf.tmpl", size: 9599, mode: os.FileMode(420), modTime: time.Unix(1506003819, 0)}
  178. a := &asset{bytes: bytes, info: info}
  179. return a, nil
  180. }
  181. var _templateUserSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\x58\xdf\x4f\xdb\x30\x10\x7e\xef\x5f\x61\x79\x7b\x44\x94\xa1\x69\x0f\xbc\x21\xd8\x2a\xa4\x0d\x50\x01\xf5\x61\x42\x91\x9b\x5c\x53\xa3\xc4\x36\xb6\xd3\x0a\x4d\xfd\xdf\x27\x3b\x69\x63\x37\x49\x7f\xab\x2d\x1b\x7d\x4a\xec\xbb\xcb\x77\x5f\xbe\x73\xee\xfa\xa7\x85\x10\x56\x63\x12\xc7\x20\xf1\x05\xc2\xe7\xa7\x67\xf8\xc4\xac\x51\x36\xe0\xf8\x02\x99\x7d\x84\xb0\xa6\x3a\x01\xb3\x9f\x29\x90\xa7\x42\x72\xcd\xad\x19\x42\x78\x04\x52\x51\xce\xcc\x66\x71\x89\x18\xd7\x48\x81\xc6\x2d\x84\x26\x36\x98\x0a\x87\x90\x82\xc2\x17\xe8\x77\xee\x34\xd4\x5a\x4c\x03\x98\x6b\x65\x6c\x9f\xad\x6d\xc8\x99\xca\x3c\x63\x22\x44\x42\x43\xa2\x29\x67\xed\x17\xc5\x59\x69\x2b\x24\x8f\xb2\x70\x45\x5b\xa2\x87\xaa\xcc\xa8\x3d\xfa\xd2\x36\xc9\xb4\x43\x09\x44\xc3\x6c\xc3\x58\x72\xa5\x9d\x7b\x84\x30\x17\x20\x6d\xcc\x9b\xc8\xe4\x79\x95\xbb\x9c\x94\x06\x12\x94\xe0\x4c\x81\xf2\xfc\x10\xc2\xe7\x67\x67\x73\x4b\x08\xe1\x08\x54\x28\xa9\xd0\x05\x6d\x4e\x20\xbb\x6d\xd9\x22\x15\x37\x84\xf0\x67\x09\x03\xe3\xf1\xa9\x1d\xc1\x80\x32\x6a\x22\xa8\xb6\xe8\x3f\x29\x90\xdd\x02\x02\xf6\x9c\x26\xad\xba\xeb\x89\x03\x5d\x10\x49\x52\xd0\x20\x4b\x16\xf3\xdf\x1c\x68\x46\x52\xab\x80\x3e\x8f\xde\xe6\x11\x53\xd6\xb4\x23\xe1\x35\xa3\x12\x0c\x6d\x5a\x66\xb0\x93\x4c\x73\xfa\xbb\xf0\x9a\x81\xd2\xab\xa4\xfb\xec\xa4\xab\x49\x3c\x9f\x28\x36\x41\x1f\x40\x8e\x68\xe8\xb0\xf7\xdc\x72\xc3\x14\x8c\x95\xb2\x89\x20\x81\x35\x65\x73\x9d\xbb\x7c\xc8\x66\xba\xb7\x5f\xd9\xe4\xf4\x1f\x58\x36\x31\xb0\x90\xb3\x01\x8d\xd7\x52\x4e\x07\xd8\x55\xee\x75\x5c\xe2\x99\xe1\xfa\x7f\x54\xe4\xa4\x7c\x50\x21\x25\xd4\xd3\x0c\x8e\x61\xb1\x84\x7e\x1a\xfb\xe3\x52\xcf\xa6\xa2\xd9\x15\x85\x12\x18\x8c\xd7\xaa\xc3\xae\xf5\xf8\x37\x58\x7c\x7f\xa5\x67\xd9\x3f\x70\xd9\x65\x22\x5a\xb7\x5b\x7c\xca\x5d\x3e\x54\x33\xdd\xdb\xaf\x6a\x72\xfa\xf7\x2c\x9b\xd9\xe4\xe3\xe0\x29\x67\x0f\xf7\x05\x98\x6b\x57\x4e\xfa\x4d\x58\xe2\x78\xff\x05\xc2\xf2\xc4\x36\xa3\x8e\x00\xa9\xe9\x9c\x68\xec\x40\x56\x90\xed\x49\x69\x1a\x47\x69\x49\x59\x8c\x6b\x5f\xa6\x02\x39\x02\x19\x28\x90\x94\x24\x01\xcb\xd2\xbe\x87\x65\xe5\x38\x21\x48\xbd\x91\x9f\x6d\xe4\xa3\x80\x6c\xe4\x4d\x45\xc0\x60\x23\x4f\xc6\x83\x78\xdc\xe4\xd8\xe7\x3c\x01\xc2\x3c\x69\xe2\x01\x97\xa9\x45\x39\xdb\xae\x0d\x3c\xe4\x4a\x07\x34\x6a\x0a\x4d\x99\x06\x33\x67\x37\x84\xa6\x4c\x7f\xfb\xda\x90\xab\x0a\x48\x94\xda\xc2\xd9\x0d\xe8\xda\x53\xae\x52\x2e\x97\xe6\x99\xf7\x79\x71\x55\x14\x5a\x30\x3c\x53\x28\xb0\x2c\xf5\x6a\x05\xdf\xde\xdd\x77\xbf\xff\xb8\xbc\xfe\x75\x73\xeb\x1e\x7f\xb7\x77\x95\xa5\x7c\xa1\xb8\x9f\x15\xa0\xa9\x1e\x92\x25\x36\x05\x37\xd6\x62\xd0\x9d\xde\xb6\x88\x7d\xb0\x9d\x9e\x7b\xdf\xe9\xad\x00\x73\x09\xc2\x07\x4d\x34\x0d\xb7\x45\xf9\xf0\x78\xf9\x78\x73\xe5\x63\xad\xae\x15\x2b\xcb\x31\xbb\x86\x53\xe4\x75\xf3\xf6\x81\xce\x2a\x41\x94\x1a\x73\xd9\x58\x5b\xcb\xea\xbd\xf7\x51\xef\x95\x7a\xaf\x9b\x8b\xf7\xf9\x7a\x17\x80\xaa\x8c\x59\xc7\x87\xab\x68\xa0\xb6\x00\x16\x26\x14\x98\x0e\x2a\x7f\x08\x6c\x8c\xce\xeb\x90\x8f\x84\xb1\x5d\x10\x65\xf0\x54\x9a\xe5\x69\x10\x22\x25\xf1\x3b\x49\x4c\x35\xa4\xf3\xf6\x8d\x6d\x62\xa5\x1b\xab\xed\x0a\x17\xa5\xe8\xb7\x98\xef\xf0\x80\x8c\xc7\xc2\xff\x18\x2d\xa1\xab\xee\x7b\xbb\xdf\x03\x52\xd9\x4f\x68\xb0\x05\x6c\xe7\x23\x5c\xfb\x04\x7b\xfe\x6e\xf3\x80\xb2\x79\x6a\x12\x91\x99\x12\x5a\x93\xd6\xdf\x00\x00\x00\xff\xff\x56\xc1\xb8\x25\x84\x19\x00\x00")
  182. func templateUserSwaggerJsonBytes() ([]byte, error) {
  183. return bindataRead(
  184. _templateUserSwaggerJson,
  185. "template/user.swagger.json",
  186. )
  187. }
  188. func templateUserSwaggerJson() (*asset, error) {
  189. bytes, err := templateUserSwaggerJsonBytes()
  190. if err != nil {
  191. return nil, err
  192. }
  193. info := bindataFileInfo{name: "template/user.swagger.json", size: 6532, mode: os.FileMode(420), modTime: time.Unix(1506003979, 0)}
  194. a := &asset{bytes: bytes, info: info}
  195. return a, nil
  196. }
  197. var _templateVpnSwaggerJson = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xe4\x56\x4f\x6f\xdb\x3e\x0c\xbd\xfb\x53\x10\xfa\xfd\x8e\x45\xdd\xf5\x98\xeb\xfe\x00\xbd\x64\x46\xbb\xf6\x32\x04\x81\x62\x33\x89\xba\x58\x52\x45\x3a\x43\x31\xe4\xbb\x0f\x92\x93\x58\xb6\x93\xae\x75\x8b\xa5\xc0\x7a\xb2\x4d\x3e\xf6\x91\x7c\x24\xf3\x2b\x01\x10\xf4\x53\x2e\x16\xe8\xc4\x08\xc4\xe5\xf9\x85\x38\xf3\xdf\x94\x9e\x1b\x31\x02\x6f\x07\x10\xac\x78\x85\xde\xbe\xb6\xfa\xdc\x3a\xc3\x26\x78\x01\x88\x35\x3a\x52\x46\x07\x5b\xfd\x08\xda\x30\x10\xb2\x48\x00\x36\x21\x16\xe5\x4b\x2c\x91\xc4\x08\xbe\xd7\xa0\x25\xb3\xdd\x05\xf0\xcf\xe4\x7d\x27\xc1\x37\x37\x9a\xaa\x96\xb3\xb4\x76\xa5\x72\xc9\xca\xe8\xf4\x9e\x8c\x6e\x7c\xad\x33\x45\x95\x3f\xd3\x57\xf2\x92\x9a\x84\xd2\xf5\x87\x74\x6d\x75\xaa\xb4\xe2\xfd\x57\xef\x66\x28\x7e\x07\x10\xc6\xa2\x0b\x01\xaf\x0a\x9f\xe4\x95\x07\x9c\x35\x66\x87\x64\x8d\x26\xa4\x16\x0a\x40\x5c\x5e\x5c\x74\x3e\x01\x88\x02\x29\x77\xca\xf2\xb6\x62\x51\xa0\x60\x0e\x85\x92\x3d\x18\x80\xf8\xdf\xe1\xdc\x23\xfe\x4b\x0b\x9c\x7b\xd2\xca\x68\x4a\xed\xec\x2e\x1b\x7b\x46\xd7\x5b\x16\xa2\x85\xdb\x24\x87\x9e\x37\x11\x7b\x2b\x9d\x2c\x91\xd1\x35\x35\xac\xff\x3a\xbc\xb5\x2c\x43\xfb\x67\xa6\x78\xec\x92\x56\xfa\x98\xc5\xe1\x43\xa5\x1c\xfa\xba\xb1\xab\xf0\xed\x92\x7d\xa8\x90\xf8\x39\xb9\x4e\xa2\x5c\x59\x2e\xba\x59\x8a\xbb\x6c\x7c\x83\x6e\xad\xf2\xa8\x72\x93\x24\x8e\xb2\xad\xd6\x5e\x30\xc4\x92\xab\xb8\xd9\x62\x81\x4f\x2b\xe6\xa6\x46\xbc\x2b\xcd\xd4\x9c\x86\xaa\xe6\x6d\x2a\x59\xd9\x42\x32\xbe\x68\xf8\x6e\x6b\xc8\xbb\x2a\x65\xcd\xe9\x9f\x19\xc0\x5d\xba\x7f\x73\x04\xf7\x87\x24\x62\xd3\xac\xf2\xde\x5e\x88\x14\xc5\x8f\x36\x94\xcd\xcc\xee\x31\x6f\xf6\xb6\xbf\x1c\x16\x1d\xab\x8e\x6e\xc4\xd2\x10\x6f\x4b\xdd\x52\xd3\x2e\x0e\xb1\x53\x7a\x21\x0e\xb7\xd2\x38\x1e\x84\xf3\xe7\x74\x6a\xeb\x92\xb7\xd0\x4f\xb4\x21\x0b\x37\xf8\x60\x3c\x65\xa7\xb3\x95\xc9\x7f\x0c\xe1\x52\xe8\xde\x20\x1d\x85\x1d\x1c\xee\xfe\x45\x3a\xde\x8d\x3e\xb0\xce\xea\x00\x62\xfb\xcf\xf7\xfd\x43\x5d\x95\x2d\x21\x89\xf1\xd7\xec\xfa\xf3\x97\x78\x35\xdc\x7e\xca\xe2\xd7\x6f\x1f\xb3\x1d\xf9\xbd\x24\xbd\xa0\x64\xb5\xf2\x6d\xdb\x05\xe8\x93\xea\xec\xca\x57\xa8\x6b\xa8\xb2\x08\x9d\x92\xab\xa9\xae\xca\x59\xf8\x95\xf6\xe2\x00\xa7\x90\x75\x8e\x03\x71\x72\x3a\x14\xaa\x71\x10\xac\x94\x34\x68\x58\x72\x87\x92\xb1\x98\xca\xe1\x63\x7f\xba\x19\x6d\xef\xf1\x57\x88\xfa\xf4\xeb\xa6\x73\x81\xff\xb4\x70\xfc\x35\x49\x36\xc9\xef\x00\x00\x00\xff\xff\x53\xa2\xe6\x07\xfa\x0c\x00\x00")
  198. func templateVpnSwaggerJsonBytes() ([]byte, error) {
  199. return bindataRead(
  200. _templateVpnSwaggerJson,
  201. "template/vpn.swagger.json",
  202. )
  203. }
  204. func templateVpnSwaggerJson() (*asset, error) {
  205. bytes, err := templateVpnSwaggerJsonBytes()
  206. if err != nil {
  207. return nil, err
  208. }
  209. info := bindataFileInfo{name: "template/vpn.swagger.json", size: 3322, mode: os.FileMode(420), modTime: time.Unix(1506003979, 0)}
  210. a := &asset{bytes: bytes, info: info}
  211. return a, nil
  212. }
  213. // Asset loads and returns the asset for the given name.
  214. // It returns an error if the asset could not be found or
  215. // could not be loaded.
  216. func Asset(name string) ([]byte, error) {
  217. cannonicalName := strings.Replace(name, "\\", "/", -1)
  218. if f, ok := _bindata[cannonicalName]; ok {
  219. a, err := f()
  220. if err != nil {
  221. return nil, fmt.Errorf("Asset %s can't read by error: %v", name, err)
  222. }
  223. return a.bytes, nil
  224. }
  225. return nil, fmt.Errorf("Asset %s not found", name)
  226. }
  227. // MustAsset is like Asset but panics when Asset would return an error.
  228. // It simplifies safe initialization of global variables.
  229. func MustAsset(name string) []byte {
  230. a, err := Asset(name)
  231. if err != nil {
  232. panic("asset: Asset(" + name + "): " + err.Error())
  233. }
  234. return a
  235. }
  236. // AssetInfo loads and returns the asset info for the given name.
  237. // It returns an error if the asset could not be found or
  238. // could not be loaded.
  239. func AssetInfo(name string) (os.FileInfo, error) {
  240. cannonicalName := strings.Replace(name, "\\", "/", -1)
  241. if f, ok := _bindata[cannonicalName]; ok {
  242. a, err := f()
  243. if err != nil {
  244. return nil, fmt.Errorf("AssetInfo %s can't read by error: %v", name, err)
  245. }
  246. return a.info, nil
  247. }
  248. return nil, fmt.Errorf("AssetInfo %s not found", name)
  249. }
  250. // AssetNames returns the names of the assets.
  251. func AssetNames() []string {
  252. names := make([]string, 0, len(_bindata))
  253. for name := range _bindata {
  254. names = append(names, name)
  255. }
  256. return names
  257. }
  258. // _bindata is a table, holding each asset generator, mapped to its name.
  259. var _bindata = map[string]func() (*asset, error){
  260. "template/auth.swagger.json": templateAuthSwaggerJson,
  261. "template/ccd.file.tmpl": templateCcdFileTmpl,
  262. "template/client.ovpn.tmpl": templateClientOvpnTmpl,
  263. "template/dh4096.pem.tmpl": templateDh4096PemTmpl,
  264. "template/iptables.tmpl": templateIptablesTmpl,
  265. "template/network.swagger.json": templateNetworkSwaggerJson,
  266. "template/server.conf.tmpl": templateServerConfTmpl,
  267. "template/user.swagger.json": templateUserSwaggerJson,
  268. "template/vpn.swagger.json": templateVpnSwaggerJson,
  269. }
  270. // AssetDir returns the file names below a certain
  271. // directory embedded in the file by go-bindata.
  272. // For example if you run go-bindata on data/... and data contains the
  273. // following hierarchy:
  274. // data/
  275. // foo.txt
  276. // img/
  277. // a.png
  278. // b.png
  279. // then AssetDir("data") would return []string{"foo.txt", "img"}
  280. // AssetDir("data/img") would return []string{"a.png", "b.png"}
  281. // AssetDir("foo.txt") and AssetDir("notexist") would return an error
  282. // AssetDir("") will return []string{"data"}.
  283. func AssetDir(name string) ([]string, error) {
  284. node := _bintree
  285. if len(name) != 0 {
  286. cannonicalName := strings.Replace(name, "\\", "/", -1)
  287. pathList := strings.Split(cannonicalName, "/")
  288. for _, p := range pathList {
  289. node = node.Children[p]
  290. if node == nil {
  291. return nil, fmt.Errorf("Asset %s not found", name)
  292. }
  293. }
  294. }
  295. if node.Func != nil {
  296. return nil, fmt.Errorf("Asset %s not found", name)
  297. }
  298. rv := make([]string, 0, len(node.Children))
  299. for childName := range node.Children {
  300. rv = append(rv, childName)
  301. }
  302. return rv, nil
  303. }
  304. type bintree struct {
  305. Func func() (*asset, error)
  306. Children map[string]*bintree
  307. }
  308. var _bintree = &bintree{nil, map[string]*bintree{
  309. "template": &bintree{nil, map[string]*bintree{
  310. "auth.swagger.json": &bintree{templateAuthSwaggerJson, map[string]*bintree{}},
  311. "ccd.file.tmpl": &bintree{templateCcdFileTmpl, map[string]*bintree{}},
  312. "client.ovpn.tmpl": &bintree{templateClientOvpnTmpl, map[string]*bintree{}},
  313. "dh4096.pem.tmpl": &bintree{templateDh4096PemTmpl, map[string]*bintree{}},
  314. "iptables.tmpl": &bintree{templateIptablesTmpl, map[string]*bintree{}},
  315. "network.swagger.json": &bintree{templateNetworkSwaggerJson, map[string]*bintree{}},
  316. "server.conf.tmpl": &bintree{templateServerConfTmpl, map[string]*bintree{}},
  317. "user.swagger.json": &bintree{templateUserSwaggerJson, map[string]*bintree{}},
  318. "vpn.swagger.json": &bintree{templateVpnSwaggerJson, map[string]*bintree{}},
  319. }},
  320. }}
  321. // RestoreAsset restores an asset under the given directory
  322. func RestoreAsset(dir, name string) error {
  323. data, err := Asset(name)
  324. if err != nil {
  325. return err
  326. }
  327. info, err := AssetInfo(name)
  328. if err != nil {
  329. return err
  330. }
  331. err = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755))
  332. if err != nil {
  333. return err
  334. }
  335. err = ioutil.WriteFile(_filePath(dir, name), data, info.Mode())
  336. if err != nil {
  337. return err
  338. }
  339. err = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())
  340. if err != nil {
  341. return err
  342. }
  343. return nil
  344. }
  345. // RestoreAssets restores an asset under the given directory recursively
  346. func RestoreAssets(dir, name string) error {
  347. children, err := AssetDir(name)
  348. // File
  349. if err != nil {
  350. return RestoreAsset(dir, name)
  351. }
  352. // Dir
  353. for _, child := range children {
  354. err = RestoreAssets(dir, filepath.Join(name, child))
  355. if err != nil {
  356. return err
  357. }
  358. }
  359. return nil
  360. }
  361. func _filePath(dir, name string) string {
  362. cannonicalName := strings.Replace(name, "\\", "/", -1)
  363. return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
  364. }