Mercurial > mercurial > hgweb_rsearcher.cgi
comparison go/client.go @ 8:82f9af6aa7e4
add net.cpp
| author | pyon@macmini |
|---|---|
| date | Tue, 30 Oct 2018 17:26:02 +0900 |
| parents | 29829e98d510 |
| children | 240752cbe11b |
comparison
equal
deleted
inserted
replaced
| 7:29829e98d510 | 8:82f9af6aa7e4 |
|---|---|
| 1 /* | 1 /* |
| 2 client.go : client-program. | 2 client.go : client-program. |
| 3 Version : 1.1 | 3 Version : 1.2 |
| 4 Last Change: 2018-10-24 水 17:21:52. | 4 Last Change: 2018-10-30 火 09:13:24. |
| 5 | 5 |
| 6 install to: rsearcher_root/ | 6 install to: rsearcher_root/ |
| 7 | 7 |
| 8 rsearcher_root/client.exe | 8 rsearcher_root/client.exe |
| 9 + grsearcher.exe | 9 + grsearcher.exe |
| 14 + index.db ( 10 days ) | 14 + index.db ( 10 days ) |
| 15 + image/*.png, *.jpg | 15 + image/*.png, *.jpg |
| 16 + doc/ | 16 + doc/ |
| 17 + .cache/* ( temporary ) | 17 + .cache/* ( temporary ) |
| 18 | 18 |
| 19 $ client.exe -r 192.168.0.1:3910 # get new release | 19 $ client.exe -r 192.168.0.1:3910 # get new release |
| 20 $ client.exe -u 192.168.0.1:3910 # get new dbs | 20 $ client.exe -u 192.168.0.1:3910 # get new dbs |
| 21 $ client.exe 192.168.0.1:3910 0800012345 20171231 # get images | 21 $ client.exe 192.168.0.1:3910 0800012345 20171231 # get images |
| 22 $ client.exe -a 192.168.0.1:3910 upfile.txt # upload file | |
| 22 */ | 23 */ |
| 23 package main | 24 package main |
| 24 | 25 |
| 25 import ( | 26 import ( |
| 26 "archive/tar" | 27 "archive/tar" |
| 39 ) | 40 ) |
| 40 | 41 |
| 41 var version string | 42 var version string |
| 42 | 43 |
| 43 func init() { | 44 func init() { |
| 44 version = "1.1" | 45 version = "1.2" |
| 45 } | 46 } |
| 46 | 47 |
| 47 func main() { | 48 func main() { |
| 48 var upgrade = flag.Bool( "r", false, "" ) // get grsearcher.exe, crypto.exe client.exe | 49 var upgrade = flag.Bool( "r", false, "" ) // get grsearcher.exe, crypto.exe client.exe |
| 49 var update = flag.Bool( "u", false, "" ) // get auth.db, hhs.db, index.db(14,28) | 50 var update = flag.Bool( "u", false, "" ) // get auth.db, hhs.db, index.db(14,28) |
| 50 var upload = flag.Bool( "a", false, "" ) // post somefile | 51 var upload = flag.Bool( "a", false, "" ) // post somefile |
| 52 var cnttime = flag.Bool( "t", false, "" ) // count time | |
| 51 var printver = flag.Bool( "v", false, "" ) // print version | 53 var printver = flag.Bool( "v", false, "" ) // print version |
| 52 flag.Parse() | 54 flag.Parse() |
| 53 | 55 |
| 54 // print version | 56 // print version |
| 55 if *printver { | 57 if *printver { |
| 56 fmt.Println( "client ( version ", version, ")" ) | 58 fmt.Println( "client [ ver", version, "]" ) |
| 57 os.Exit( 0 ) | 59 os.Exit( 0 ) |
| 58 } | 60 } |
| 61 | |
| 62 st := time.Now() // start time | |
| 59 | 63 |
| 60 // upload | 64 // upload |
| 61 if *upload { | 65 if *upload { |
| 62 if flag.NArg() != 2 { | 66 if flag.NArg() != 2 { |
| 63 fmt.Fprintf( os.Stderr, "bad host or file.\n" ) | 67 fmt.Fprintf( os.Stderr, "bad host or file.\n" ) |
| 78 } | 82 } |
| 79 defer res.Body.Close() | 83 defer res.Body.Close() |
| 80 message, _ := ioutil.ReadAll( res.Body ) | 84 message, _ := ioutil.ReadAll( res.Body ) |
| 81 fmt.Println( string( message ) ) | 85 fmt.Println( string( message ) ) |
| 82 | 86 |
| 87 if *cnttime { | |
| 88 fmt.Println( "---", time.Now().Sub( st ) ) | |
| 89 } | |
| 83 os.Exit( 0 ) | 90 os.Exit( 0 ) |
| 84 } | 91 } |
| 85 | 92 |
| 86 // software upgrade | 93 // software upgrade |
| 87 if *upgrade { | 94 if *upgrade { |
| 100 } | 107 } |
| 101 fmt.Print( "Getting client.exe..." ) | 108 fmt.Print( "Getting client.exe..." ) |
| 102 if _, err := get_file( host, "/release/client.exe", "client1.exe" ); err != nil { | 109 if _, err := get_file( host, "/release/client.exe", "client1.exe" ); err != nil { |
| 103 log.Fatal( err ) | 110 log.Fatal( err ) |
| 104 } | 111 } |
| 112 if *cnttime { | |
| 113 fmt.Println( "---", time.Now().Sub( st ) ) | |
| 114 } | |
| 105 os.Exit( 0 ) | 115 os.Exit( 0 ) |
| 106 } | 116 } |
| 107 | 117 |
| 108 // database update | 118 // database update |
| 109 if *update { | 119 if *update { |
| 125 fmt.Print( "Getting index.db..." ) | 135 fmt.Print( "Getting index.db..." ) |
| 126 if _, err := get_file( host, "/db/index.db", "index.db" ); err != nil { | 136 if _, err := get_file( host, "/db/index.db", "index.db" ); err != nil { |
| 127 log.Fatal( err ) | 137 log.Fatal( err ) |
| 128 } | 138 } |
| 129 } | 139 } |
| 140 | |
| 141 if *cnttime { | |
| 142 fmt.Println( "---", time.Now().Sub( st ) ) | |
| 143 } | |
| 130 os.Exit( 0 ) | 144 os.Exit( 0 ) |
| 131 } | 145 } |
| 132 | 146 |
| 133 // main : image download | 147 // main : image download |
| 134 if flag.NArg() != 3 { | 148 if flag.NArg() != 3 { |
| 156 log.Fatal( err ) | 170 log.Fatal( err ) |
| 157 } | 171 } |
| 158 if err := untgz_images( d, b ); err != nil { | 172 if err := untgz_images( d, b ); err != nil { |
| 159 log.Fatal( err ) | 173 log.Fatal( err ) |
| 160 } | 174 } |
| 175 | |
| 176 if *cnttime { | |
| 177 fmt.Println( "---", time.Now().Sub( st ) ) | |
| 178 } | |
| 161 } | 179 } |
| 162 | 180 |
| 163 /* Subroutines */ | 181 /* Subroutines */ |
| 164 // HTTP GET | 182 // HTTP GET |
| 165 func get_file( host, rfile, lfile string ) ( []byte, error ) { | 183 func get_file( host, rfile, lfile string ) ( []byte, error ) { |
