def setup_g(): """Store commonly used values in Flask's special g object""" # ignore_static here because `crypto_util.shash` is bcrypt (very time consuming), # and we don't need to waste time running if we're just serving a static # resource that won't need to access these common values. if logged_in(): g.flagged = session['flagged'] g.codename = session['codename'] g.sid = crypto_util.shash(g.codename) g.loc = store.path(g.sid)
def create(): sid = crypto_util.shash(session['codename']) if os.path.exists(store.path(sid)): # if this happens, we're not using very secure crypto store.log("Got a duplicate ID '%s'" % sid) else: os.mkdir(store.path(sid)) session['logged_in'] = True session['flagged'] = False return redirect(url_for('lookup'))
def setup_g(): """Store commonly used values in Flask's special g object""" # ignore_static here because `crypto_util.shash` is bcrypt (very time consuming), # and we don't need to waste time running if we're just serving a static # resource that won't need to access these common values. if logged_in(): # We use session.get (which defaults to None if 'flagged' is not in the # session) to avoid a KeyError on the redirect from login/ to lookup/ g.flagged = session.get('flagged') g.codename = session['codename'] g.sid = crypto_util.shash(g.codename) g.loc = store.path(g.sid)
def _block_on_reply_keypair_gen(codename): sid = crypto_util.shash(codename) while not crypto_util.getkey(sid): sleep(0.1)
def valid_codename(codename): return os.path.exists(store.path(crypto_util.shash(codename)))