1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
|
Wed Sep 30 13:00:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
* Fixed a bunch of warnings related to char * and const char *.
Thanks to Sandro Doro <doros@aureus.sublink.org> for reporting
this.
Sat Sep 12 21:21:01 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
* Made zillions of changes to "ACE"ify all of the code. Drwho is
now officially working again!
Sun Sep 6 22:48:52 1998 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
* Replaced all Str::*() methods with the new ACE::*() methods,
which are more "standard".
* Began to work on drwho after a 5 year absence...
Sun Feb 14 16:13:10 1993 Douglas C. Schmidt (schmidt at net1.ics.uci.edu)
* Yow. Once again back at work... This time I fixed things up so
that the release compiles properly with Solaris 2.1 C++, g++
2.3.3, and the Sun C++ compiler on Sun OS 4.1.x. To do this I
had to change the user-defined memory allocator somewhat, since
the Sun C++ compiler was using the global NEW operator to
allocate pools of memory behind my back... Naturally, this
reaked havoc with the existing version in the server, which
returns all the allocated memory to the free list once a request
is satisfied. In addition, g++ had a weird multiple
inheritance/pure virtual function bug that I fixed by reordering
certain pure virtual functions. Oh what fun... ;-) Anyhow,
everything is now back in running order!
Sun Dec 6 16:13:21 1992 Douglas C. Schmidt (schmidt at net1.ics.uci.edu)
* Yow, well, after about 8 months of total neglect I'm finally
back at work on this program! The current changes I did today
involved getting drwho to compile with g++ 2.3.2. This required
a couple of small work arounds in the source code due to bugs,
but hey, I guess it is better than nothing right?!
Also, I had to fix a couple of places where I didn't correctly
initialize static variables (the compiler implementations have
changed since last year obviously). Also, I've changed a couple
of the default server hosts to reflect the fascist policies of
our support group ;-) (I've no longer got access to certain
servers...)
Anyhow, I think drwho is once again running with g++, so now I
can hand the release over to Ericka... ;-)
Wed May 6 23:12:02 1992 Douglas C. Schmidt (schmidt at net4.ics.uci.edu)
* There is something horribly wrong with g++ 2.1. Therefore, I
had to make a couple of changes in the pmc-rusers.C and
pm-client.C files in order to make the blasted thing compile
when I had pointers to member functions... Make sure to change
this back when g++ is fixed...
Tue Feb 4 11:23:12 1992 Douglas C. Schmidt (schmidt at net6.ics.uci.edu)
* The blasted program was crashing when there were consecutive
newlines in the input file. I fixed
File_Manager::get_login_and_real_name and
File_Manager::open_friends_file so that they detect and skip
over these consecutive newlines.
Thu Nov 21 21:55:00 1991 Douglas C. Schmidt (schmidt at net6.ics.uci.edu)
* Make the time that drwho uses to consider a host idle be a
command-line parameter.
Wed Nov 13 14:24:40 1991 Douglas C. Schmidt (schmidt at bastille.ics.uci.edu)
* Something else that ought to be done:
Add a flag to the -R option that allows the hostname to be
printed using the internet address and/or the hostname...
Sat Nov 9 13:45:30 1991 Douglas C. Schmidt (schmidt at bastille.ics.uci.edu)
* Added zillions more changes yet again. We now have an rusers
compatibility mode (-R), to go along with the -a, -w, and
default (flo) options.
* Changed the -w option so that it only returns the name of the
host machine where the user is logged in. This way, I can say:
% talk schmidt@`drwho -w schmidt`
% rsh `drwho -w schmidt` w
etc... ;-)
* Added support for the -L option (print using login name rather
than real name). Also added support for the -l option (print
out verbosely, a la ls -l!).
Sun Oct 27 21:32:15 1991 Douglas C. Schmidt (schmidt at bastille.ics.uci.edu)
* Need to complete the -s and -S options to support sorting the
output by login name and real name, respectively... In order to
support the '*' indication with this scheme we probably need to
lists, one for active and one for inactive users!
Tue Oct 22 00:13:21 1991 Douglas C. Schmidt (schmidt at net6.ics.uci.edu)
* Make another zillion changes...
Sun Oct 20 21:35:24 1991 Douglas C. Schmidt (schmidt at net6.ics.uci.edu)
* Added support for the -p option to allow setting the client and
server port number from the command-line.
* Things done so far:
* Owen also wants an new rflo feature (done)
I also want a version that given a command like:
whereis omalley
would return the login where that login is active if there is
one (ie. omalley@zola). Then you could have commands like:
talk `whereis omalley`
that would find where I am and try to talk to me there.
* Another neat addition would be: have an option (e.g., `-a') so
that rflo would return *all* the users logged in and then look
up their names using the yp passwd stuff! (partially done, but
not very elegantly yet...). (done)
* Make the port number a command-line option... (done)
* we also need think about how to incorporate inheritance and
dynamic binding into this thang (probably it can be used for
the local/remote split, and also perhaps for the
friends/everyone split (see below)). (done)
* Fix up the options stuff wrt the -F option etc... (done)
* Have I fixed the is_active shit? (done)
* we need a "message abstraction" that abstracts away from the
details of packets protocols and remote operations protocols.
(done).
* Note, should make an option so we could read the names of the
hosts to query from a file... (done)
Fri Oct 18 16:17:39 1991 Douglas C. Schmidt (schmidt at net6.ics.uci.edu)
* I've made countless changes...
Wed Oct 16 17:42:40 1991 Douglas C. Schmidt (schmidt at net6.ics.uci.edu)
* Undid the message manager abstraction and merged it in with the
Friend_Manager client and server. This really cleans up the
interface!
* Yow, make zillions of important changes to make the
client/server split more explicit... Now the Friend_Manager is
split into client and server, the message manager is split, and
the communications manager is also split. Each file is much
smaller and easier to understand!
Mon Oct 14 18:36:55 1991 Douglas C. Schmidt (schmidt at net1.ics.uci.edu)
* Added support for the -h and -? options, that print out a long
and short usage message, respectively.
Tue Oct 1 09:28:29 1991 Douglas C. Schmidt (schmidt at net4.ics.uci.edu)
* The -a option works a great deal better too... I added a check
in the File_Manager::open_passwd_file routine to strip off the
extra subfields in the pw_gecos field, since this info isn't
really very useful and makes the "real name" field too long!
* Added some extra stuff to the Comm_Manager so that I could
change the max size of the UDP datagrams that are passed around.
As it turns out, I don't really need to do this, but it is more
robust this way...
Thu Sep 26 14:00:45 1991 Douglas C. Schmidt (schmidt at net4.ics.uci.edu)
* Make sun3 and sun4 subdirectories to help the build process!
* Changed the UDP port number from 12346 to 12344 so I wouldn't
collide with Owen!
* There is a weird bus error problem on the sun 4s... Hum...
* Yow, got everything working again...
* Still to do:
* Think about fixing the -f option to work correctly for
*relative* filenames...
* Make UDP_BUFFER_SIZE a command-line option...
* Modify server.C to be started by inetd.
* For -a option... if they are a friend, use the name from
.friend.dta otherwise use the name from the passwd file.
* Don't forget about:
delete Friend_Manager::friend_record;
delete Friend_Manager::sorted_record;
Need to figure out a good way to deal with this!
Mon Sep 23 16:09:46 1991 Douglas C. Schmidt (schmidt at net4.ics.uci.edu)
* Added a neat feature that now allows the user to specify which
hosts to examine by specifying an option ('-F') on the
command-line that reads the contents of that file and inserts it
into the list of files.
Wed Sep 18 10:46:41 1991 Douglas C. Schmidt (schmidt at bastille.ics.uci.edu)
* We need to make all the interfaces throughout rflo much more
object-oriented, e.g.:
* Made a host-manager abstraction to handle all the host
machine related operations. This makes the options stuff
*much* cleaner!
* Make rflo compile with g++ 1.37.2! Now it compiles with cfront
2.0, Saber C++ 1.0.1 and g++-1.39.0 and g++-1.37.2.
Tue Sep 17 19:02:47 1991 Douglas C. Schmidt (schmidt at net4.ics.uci.edu)
* Started merging in the stuff Owen did. I'm trying to maintain a
consistent programming style... The Owen stuff adds support for
timeouts and fixes problems with returning a count of the number
of friends!
Wed Sep 4 10:14:51 1991 Douglas C. Schmidt (schmidt at net4.ics.uci.edu)
* Things to do:
* Add comprehensive daemon support for server.C.
* Add timeout stuff in case hosts are down!
* Talk to support about making a standard daemon.
* Fix the problem with returning the number of friends.
|