projects
/
mirror
/
userdir-ldap.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
c50d885
)
xearth anonomizer
author
jgg
<>
Wed, 22 Sep 1999 03:51:16 +0000
(
03:51
+0000)
committer
jgg
<>
Wed, 22 Sep 1999 03:51:16 +0000
(
03:51
+0000)
doc/ud-xearth.1.yo
patch
|
blob
|
history
ud-xearth
patch
|
blob
|
history
diff --git
a/doc/ud-xearth.1.yo
b/doc/ud-xearth.1.yo
index
666c903
..
c25b71d
100644
(file)
--- a/
doc/ud-xearth.1.yo
+++ b/
doc/ud-xearth.1.yo
@@
-22,6
+22,12
@@
dit(bf(-u))
Set the authentication user. This is the user who's authority is used when
accessing the LDAP directory. The default is to use the current system user
name.
Set the authentication user. This is the user who's authority is used when
accessing the LDAP directory. The default is to use the current system user
name.
+
+dit(bf(-a))
+Anonomize the data. Coordinates are truncated and no names are printed. For
+best results the output should be sorted using 'sort -n'. Otherwise the output
+is sorted by name..
+
enddit()
manpagefiles()
enddit()
manpagefiles()
diff --git
a/ud-xearth
b/ud-xearth
index
b1c1fee
..
cec3308
100755
(executable)
--- a/
ud-xearth
+++ b/
ud-xearth
@@
-17,6
+17,8
@@
import string, re, time, ldap, getopt, sys, pwd, posix;
from userdir_ldap import *;
import string, re, time, ldap, getopt, sys, pwd, posix;
from userdir_ldap import *;
+Anon = 0;
+
# This needs to check for leading 0 to disambiguate some things
def DecDegree(Attr,Type):
Parts = re.match('[+-]?(\d*)\\.?(\d*)?',GetAttr(Attr,Type)).groups();
# This needs to check for leading 0 to disambiguate some things
def DecDegree(Attr,Type):
Parts = re.match('[+-]?(\d*)\\.?(\d*)?',GetAttr(Attr,Type)).groups();
@@
-39,17
+41,23
@@
def DecDegree(Attr,Type):
Min = Val - long(Val);
Val = long(Val) + Min*100.0/60.0;
Min = Val - long(Val);
Val = long(Val) + Min*100.0/60.0;
+ if Anon != 0:
+ Str = "%3.3f"%(Val);
+ else:
+ Str = str(Val);
if Val >= 0:
if Val >= 0:
- return "+" +
str(Val)
;
- return
str(Val)
;
+ return "+" +
Str
;
+ return
Str
;
# Main program starts here
User = pwd.getpwuid(posix.getuid())[0];
BindUser = User;
# Main program starts here
User = pwd.getpwuid(posix.getuid())[0];
BindUser = User;
-(options, arguments) = getopt.getopt(sys.argv[1:], "u:")
+(options, arguments) = getopt.getopt(sys.argv[1:], "
a
u:")
for (switch, val) in options:
if (switch == '-u'):
for (switch, val) in options:
if (switch == '-u'):
- User = val
+ User = val;
+ if (switch == '-a'):
+ Anon = 1;
# Connect to the ldap server
l = ldap.open(LDAPServer);
# Connect to the ldap server
l = ldap.open(LDAPServer);
@@
-61,20
+69,27
@@
l.simple_bind_s(UserDn,Password);
Attrs = l.search_s(BaseDn,ldap.SCOPE_ONELEVEL,"latitude=*",\
["uid","cn","mn","sn","latitude","longitude"]);
Attrs = l.search_s(BaseDn,ldap.SCOPE_ONELEVEL,"latitude=*",\
["uid","cn","mn","sn","latitude","longitude"]);
-#ttrs = [('uid=bma,ou=users,dc=debian,dc=org', {'longitude': ['-0771426.059'], 'sn': ['Almeida'], 'cn': ['Brian'], 'latitude': ['0384514.263'], 'uid': ['bma']}), ('uid=jgg,ou=users,dc=debian,dc=org', {'longitude': ['-11328'], 'sn': ['Gunthorpe'], 'cn': ['Jason'], 'latitude': ['+5333'], 'uid': ['jgg']})]
Attrs.sort();
print "Markers file will be written to markers.dat,",
sys.stdout.flush();
F = open("markers.dat","w");
Count = 0;
Attrs.sort();
print "Markers file will be written to markers.dat,",
sys.stdout.flush();
F = open("markers.dat","w");
Count = 0;
+Failed = 0;
for x in Attrs:
if x[1].has_key("latitude") == 0 or x[1].has_key("longitude") == 0:
continue;
Count = Count + 1;
try:
for x in Attrs:
if x[1].has_key("latitude") == 0 or x[1].has_key("longitude") == 0:
continue;
Count = Count + 1;
try:
- F.write("%16s %16s \"%s\" \t# %s\n"%(DecDegree(x,"latitude"),DecDegree(x,"longitude"),GetAttr(x,"uid"),EmailAddress(x)));
+ if Anon != 0:
+ F.write("%8s %8s \"\"\n"%(DecDegree(x,"latitude"),DecDegree(x,"longitude")));
+ else:
+ F.write("%16s %16s \"%s\" \t# %s\n"%(DecDegree(x,"latitude"),DecDegree(x,"longitude"),GetAttr(x,"uid"),EmailAddress(x)));
except:
except:
- F.write("# Failed %s => %s: %s\n" %(x[0],sys.exc_type,sys.exc_value));
+ Failed = Failed + 1;
+ if Anon == 0:
+ F.write("# Failed %s => %s: %s\n" %(x[0],sys.exc_type,sys.exc_value));
+ else:
+ F.write("# Failed => %s: %s\n" %(sys.exc_type,sys.exc_value));
F.close();
F.close();
-print Count,"entries.";
+print Count,"entries
,",Failed,"failures
.";