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 ) { |