2011-12-16 14:51:26 +00:00
|
|
|
package storage
|
|
|
|
|
|
|
|
import (
|
|
|
|
"http"
|
|
|
|
"io/ioutil"
|
|
|
|
"url"
|
|
|
|
"log"
|
|
|
|
)
|
|
|
|
|
2011-12-20 09:00:01 +00:00
|
|
|
func BytesToUint64(b []byte)(v uint64){
|
|
|
|
length := uint(len(b))
|
|
|
|
for i :=uint(0);i<length-1;i++ {
|
2011-12-16 14:51:26 +00:00
|
|
|
v += uint64(b[i])
|
|
|
|
v <<= 8
|
|
|
|
}
|
2011-12-20 09:00:01 +00:00
|
|
|
v+=uint64(b[length-1])
|
2011-12-16 14:51:26 +00:00
|
|
|
return
|
|
|
|
}
|
2011-12-20 09:00:01 +00:00
|
|
|
func BytesToUint32(b []byte)(v uint32){
|
|
|
|
length := uint(len(b))
|
|
|
|
for i :=uint(0);i<length-1;i++ {
|
2011-12-16 14:51:26 +00:00
|
|
|
v += uint32(b[i])
|
|
|
|
v <<= 8
|
|
|
|
}
|
2011-12-20 09:00:01 +00:00
|
|
|
v+=uint32(b[length-1])
|
2011-12-16 14:51:26 +00:00
|
|
|
return
|
|
|
|
}
|
2011-12-20 09:00:01 +00:00
|
|
|
func Uint64toBytes(b []byte, v uint64){
|
2011-12-16 14:51:26 +00:00
|
|
|
for i :=uint(0);i<8;i++ {
|
2011-12-20 09:00:01 +00:00
|
|
|
b[7-i] = byte(v>>(i*8))
|
2011-12-16 14:51:26 +00:00
|
|
|
}
|
|
|
|
}
|
2011-12-20 09:00:01 +00:00
|
|
|
func Uint32toBytes(b []byte, v uint32){
|
2011-12-16 14:51:26 +00:00
|
|
|
for i :=uint(0);i<4;i++ {
|
2011-12-20 09:00:01 +00:00
|
|
|
b[3-i] = byte(v>>(i*8))
|
2011-12-16 14:51:26 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2011-12-17 06:47:23 +00:00
|
|
|
func post(url string, values url.Values)[]byte{
|
2011-12-16 14:51:26 +00:00
|
|
|
r, err := http.PostForm(url, values)
|
|
|
|
if err != nil {
|
|
|
|
log.Println("post:", err)
|
2011-12-17 06:47:23 +00:00
|
|
|
return nil
|
2011-12-16 14:51:26 +00:00
|
|
|
}
|
|
|
|
defer r.Body.Close()
|
|
|
|
b, err := ioutil.ReadAll(r.Body)
|
|
|
|
if err != nil {
|
|
|
|
log.Println("post:", err)
|
2011-12-17 06:47:23 +00:00
|
|
|
return nil
|
2011-12-16 14:51:26 +00:00
|
|
|
}
|
2011-12-17 06:47:23 +00:00
|
|
|
return b
|
2011-12-16 14:51:26 +00:00
|
|
|
}
|