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

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.

comment:2 Changed 13 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 13 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 13 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
Note: See TracTickets for help on using tickets.