aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorng0 <ng0@n0.is>2017-12-01 20:27:51 +0000
committerng0 <ng0@n0.is>2017-12-01 20:27:51 +0000
commite46b690de9baafbeaa52f178d361556298538172 (patch)
treef7a3f4c3332273940bc74c6ed64466662e545edf
parent737dad3d2564636a0d0daf3f3df6998a9aed318d (diff)
downloadgnunet-python-e46b690de9baafbeaa52f178d361556298538172.tar.gz
gnunet-python-e46b690de9baafbeaa52f178d361556298538172.zip
PEP fixes
-rw-r--r--gnunet/strings.py173
1 files changed, 88 insertions, 85 deletions
diff --git a/gnunet/strings.py b/gnunet/strings.py
index cfbdaa5..595c450 100644
--- a/gnunet/strings.py
+++ b/gnunet/strings.py
@@ -2,96 +2,99 @@ import datetime
2 2
3from gnunet import * 3from gnunet import *
4 4
5
5encTable = "0123456789ABCDEFGHIJKLMNOPQRSTUV" 6encTable = "0123456789ABCDEFGHIJKLMNOPQRSTUV"
6 7
7def data_to_string(data):
8 data = bytearray(data)
9 size = len(data)
10 bits = 0
11 rpos = 0
12 vbit = 0
13 ret = ""
14 while rpos < size:
15 while rpos < size and vbit < 5:
16 bits = (bits << 8) | data[rpos]
17 rpos += 1
18 vbit += 8
19 while vbit >= 5:
20 vbit -= 5
21 ret += encTable[(bits >> vbit) & 31]
22 if vbit > 0:
23 ret += encTable[(bits << (5 - vbit)) & 31]
24 return ret
25 8
26def string_to_data(s): 9def data_to_string(data):
27 s = str(s) 10 data = bytearray(data)
28 size = len(s) 11 size = len(data)
29 bits = 0 12 bits = 0
30 rpos = 0 13 rpos = 0
31 vbit = 0 14 vbit = 0
32 ret = bytearray([]) 15 ret = ""
33 try:
34 while rpos < size: 16 while rpos < size:
35 while rpos < size and vbit < 8: 17 while rpos < size and vbit < 5:
36 bits = (bits << 5) | int(s[rpos], 32) 18 bits = (bits << 8) | data[rpos]
37 rpos += 1 19 rpos += 1
38 vbit += 5 20 vbit += 8
39 while vbit >= 8: 21 while vbit >= 5:
40 vbit -= 8 22 vbit -= 5
41 ret.append((bits >> vbit) & 255) 23 ret += encTable[(bits >> vbit) & 31]
42 if vbit > 0: 24 if vbit > 0:
43 if bits & ((1 << vbit) - 1) != 0: 25 ret += encTable[(bits << (5 - vbit)) & 31]
44 raise ValueError("") 26 return ret
45 except ValueError:
46 raise ValueError("'" + s + "' is not a valid data-encoding string")
47 return ret
48
49def absolute_time_to_string(t):
50 return t.strftime("%a %b %d %H:%M:%S %Y")
51 27
52def string_to_absolute_time(s): 28
53 if s == "end of time": 29def string_to_data(s):
54 return None 30 s = str(s)
55 try: 31 size = len(s)
56 return datetime.datetime.strptime(s, "%a %b %d %H:%M:%S %Y") 32 bits = 0
57 except ValueError: 33 rpos = 0
58 pass 34 vbit = 0
59 try: 35 ret = bytearray([])
60 return datetime.datetime.strptime(s, "%c") 36 try:
61 except ValueError: 37 while rpos < size:
62 pass 38 while rpos < size and vbit < 8:
63 try: 39 bits = (bits << 5) | int(s[rpos], 32)
64 return datetime.datetime.strptime(s, "%Ec") 40 rpos += 1
65 except ValueError: 41 vbit += 5
66 pass 42 while vbit >= 8:
67 try: 43 vbit -= 8
68 return datetime.datetime.strptime(s, "%Y-%m-%d %H:%M:%S") 44 ret.append((bits >> vbit) & 255)
69 except ValueError: 45 if vbit > 0:
70 pass 46 if bits & ((1 << vbit) - 1) != 0:
71 try: 47 raise ValueError("")
72 return datetime.datetime.strptime(s, "%Y-%m-%d %H:%M") 48 except ValueError:
73 except ValueError: 49 raise ValueError("'" + s + "' is not a valid data-encoding string")
74 pass 50 return ret
75 try: 51
76 return datetime.datetime.strptime(s, "%x") 52
77 except ValueError: 53def absolute_time_to_string(t):
78 pass 54 return t.strftime("%a %b %d %H:%M:%S %Y")
79 try:
80 return datetime.datetime.strptime(s, "%Ex")
81 except ValueError:
82 pass
83 try:
84 return datetime.datetime.strptime(s, "%Y-%m-%d")
85 except ValueError:
86 pass
87 try:
88 return datetime.datetime.strptime(s, "%Y-%m")
89 except ValueError:
90 pass
91 try:
92 return datetime.datetime.strptime(s, "%Y")
93 except ValueError:
94 pass
95 raise ValueError("%s is not a properly formatted time string" % s)
96 55
97 56
57def string_to_absolute_time(s):
58 if s == "end of time":
59 return None
60 try:
61 return datetime.datetime.strptime(s, "%a %b %d %H:%M:%S %Y")
62 except ValueError:
63 pass
64 try:
65 return datetime.datetime.strptime(s, "%c")
66 except ValueError:
67 pass
68 try:
69 return datetime.datetime.strptime(s, "%Ec")
70 except ValueError:
71 pass
72 try:
73 return datetime.datetime.strptime(s, "%Y-%m-%d %H:%M:%S")
74 except ValueError:
75 pass
76 try:
77 return datetime.datetime.strptime(s, "%Y-%m-%d %H:%M")
78 except ValueError:
79 pass
80 try:
81 return datetime.datetime.strptime(s, "%x")
82 except ValueError:
83 pass
84 try:
85 return datetime.datetime.strptime(s, "%Ex")
86 except ValueError:
87 pass
88 try:
89 return datetime.datetime.strptime(s, "%Y-%m-%d")
90 except ValueError:
91 pass
92 try:
93 return datetime.datetime.strptime(s, "%Y-%m")
94 except ValueError:
95 pass
96 try:
97 return datetime.datetime.strptime(s, "%Y")
98 except ValueError:
99 pass
100 raise ValueError("%s is not a properly formatted time string" % s)