Opened 15 years ago
Closed 13 years ago
#65 closed enhancement (fixed)
ability to set exposure arbitrarily
Reported by: | jdreed@MIT.EDU | Owned by: | jgross@mit.edu |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | zephyr | Keywords: | |
Cc: | jgross@mit.edu |
Description
I'd like the ability to set my zephyr exposure (like I would with "zctl set exposure"). I occasionally want to differentiate between realm-visible and realm-announced (if I'm logging in and out a lot to test things, I'll set myself to realm-visible to avoid annoying people), and it's occasionally useful to differentiate between net-announced and net-visible (assuming webzephyr still honors those).
Something like :set exposure realm-visible would be good.
Unless this is already exposed by the perl API and I'm missing it.
Change History (5)
comment:1 Changed 15 years ago by nelhage@MIT.EDU
comment:2 Changed 14 years ago by jgross@mit.edu
- Cc jgross@mit.edu added
- Owner changed from nelhage@mit.edu to jgross@mit.edu
- Status changed from new to assigned
I've implemented a patch for this at https://github.com/JasonGross/barnowl/tree/exposure .
The issues that I'm unsure about with my code are:
- :set exposure ... calls ZSetVariable, writing the exposure to .zephyr.vars. Should it do this (or should your exposure be different in different barnowl/zephyr clients, and be reset when you restart barnowl)?
- The description of exposure has been copied verbatim from http://www.cs.duke.edu/csl/docs/zephyr/#expose. Should this be cited and/or reworded (if it has to be reworded, does anyone have suggestions/rewordings)?
- The code that I use to respect the value in .zephyr.subs (assuming the user hasn't since reset it) a hack, and fragile. It checks whether or not the variable object is in the global dictionary (since insertion happens after the default value is set). Is there a better way to do this?
comment:3 Changed 14 years ago by jdreed@mit.edu
In the descriptive text, the realm should be "@ATHENA.MIT.EDU", not "@mit.edu". (I'm aware that it's also wrong on the web page you copied the text from -- http://ist.mit.edu/services/athena/zephyr -- due to arcane and hilarious reasons.)
Historically, "net-announced" has never actually worked and is for all intents and purposes the same as "net-visible". Additionally, documentation of the exposure level "none" has historically included a reference to "zctl hide" (or its Barnowl equivalent), since that's what most novice users intend to do when they set their exposure to "none".
You can decide not to care about any of this.
comment:4 Changed 14 years ago by kcr@mit.edu
No, net-announced does work (as opposed to realm-announced), at least with server-side interrealm, if the remote user is subbed to the right thing (I just tested it). (Note that znol doesn't sub the remote user to the right thing by default.)
comment:5 Changed 13 years ago by jgross@mit.edu
- Resolution set to fixed
- Status changed from assigned to closed
Fixed by commit f203cad04d71e968a11be5e72e6c9d805e02010d
Note that we (or rather libzephyr) will respect an existing setting in .zephyr.vars, so a "zctl set exposure" should take effect in future barnowls. Having a way to set it internally is probably a good idea anyways.