(This isn't specific to Wireshark)
sudo vi /etc/pam.d/sudo
Add to the end BEGINNING of the file:
auth sufficient pam_tid.so
Test with a trivial sudo command, and you should get a TouchID prompt:
(This isn't specific to Wireshark)
sudo vi /etc/pam.d/sudo
Add to the end BEGINNING of the file:
auth sufficient pam_tid.so
Test with a trivial sudo command, and you should get a TouchID prompt:
@mafintosh asks: "Does anyone have a good code example of when to use setImmediate instead of nextTick?"
https://twitter.com/mafintosh/status/624590818125352960
The answer is "generally anywhere outside of core".
process.nextTick
is barely asynchronous. Flow-wise it is asynchronous, but it will trigger before any other asynchronous events can (timers, io, etc.) and thus can starve the event loop.
In this script I show a starved event loop where I just synchronously block, use nextTick
and setImmediate
# Elixir has pipes `|>`. Let's try to implement those in Ruby. | |
# | |
# I want to write this: | |
# | |
# email.body | RemoveSignature | HighlightMentions | :html_safe | |
# | |
# instead of: | |
# | |
# HighlightMentions.call(RemoveSignature.call(email.body)).html_safe | |
# |
# npm publish with goodies | |
# prerequisite: `npm install -g trash` | |
# `np` with an optional argument `patch`/`minor`/`major`/`<version>` | |
# defaults to `patch` | |
np() { | |
trash node_modules &>/dev/null; | |
git pull --rebase && | |
npm install && | |
npm test && | |
npm version ${1:-patch} && |
package com.wificar.component; | |
import android.util.Log; | |
import com.wificar.WificarActivity; | |
import com.wificar.util.BlowFish; | |
import com.wificar.util.ByteUtility; | |
import java.io.ByteArrayOutputStream; | |
import java.io.IOException; | |
import java.nio.ByteBuffer; | |
import org.apache.http.util.ByteArrayBuffer; |
alias gh="open \`git remote -v | grep git@github.com | grep fetch | head -1 | cut -f2 | cut -d' ' -f1 | sed -e's/:/\//' -e 's/git@/http:\/\//'\`" |
;; based on http://talks.golang.org/2012/concurrency.slide#50 | |
(ns robpike | |
(:require [cljs.core.async :as async :refer [<! >! chan close!]]) | |
(:require-macros [cljs.core.async.macros :as m :refer [go alt!]])) | |
(defn timeout [ms] | |
(let [c (chan)] | |
(js/setTimeout (fn [] (close! c)) ms) | |
c)) |
//datomic clone | |
var log = db.sublevel('log') | |
var audit = db.sublevel('audit') | |
//var sha1sum = require('sha1sum') | |
//initialize current sha | |
db.pre(function (op, add) { | |
var ts = timestamp() //or get timestamp from a transactor service | |
//save this value at this timestamp. | |
add({ |