- [] radare2 - brew
- [] cutter (radare2) - brew cask
- [] ghidra - brew cask
- [] ida-free - brew cask
- [] nmap - brew
- [] proxychains - brew (https://gist.github.com/allenhuang/3792521)
- [] sqlmap - brew
- [] powershell - brew cask
- [] impacket scripts - git
- [] powersploit - git
--- pcov.log 2019-01-20 14:28:58.444851609 +0100 | |
+++ xdebug.log 2019-01-20 14:25:27.607884120 +0100 | |
@@ -1,8 +1,8 @@ | |
-time php vendor/bin/phpunit --coverage-text --colors=never 2>&1 > pcov.log | |
+time php vendor/bin/phpunit --coverage-text --colors=never 2>&1 >xdebug.log | |
PHPUnit 7.5.2 by Sebastian Bergmann and contributors. | |
-Runtime: PHP 7.2.15-dev | |
+Runtime: PHP 7.2.15-dev with Xdebug 2.7.0beta2-dev |
Libuv and libev, two I/O libraries with similar names, recently had the privilege to use both libraries to write something. Now let's talk about my own subjective expression of common and different points.
The topic of high-performance network programming has been discussed. Asynchronous, asynchronous, or asynchronous. Whether it is epoll or kqueue, it is always indispensable to the asynchronous topic.
Libuv is asynchronous, and libev is synchronous multiplexing IO multiplexing.
Libev is a simple encapsulation of system I/O reuse. Basically, it solves the problem of different APIs between epoll and kqueuq. Ensure that programs written using livev's API can run on most *nix platforms. However, the disadvantages of libev are also obvious. Because it basically just encapsulates the Event Library, it is inconvenient to use. For example, accept(3) requires manual setnonblocking after connection. EAGAIN, EWOULDBLOCK, and EINTER need to be detected when reading from a socket. This is a
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz | |
tar xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz | |
mv wkhtmltox/bin/wkhtmlto* /usr/bin/ | |
ln -nfs /usr/bin/wkhtmltopdf /usr/local/bin/wkhtmltopdf |
[ Update 2020-05-31: I won't be maintaining this page or responding to comments anymore (except for perhaps a few exceptional occasions). ]
Most of the terminal emulators auto-detect when a URL appears onscreen and allow to conveniently open them (e.g. via Ctrl+click or Cmd+click, or the right click menu).
It was, however, not possible until now for arbitrary text to point to URLs, just as on webpages.
libuv 和 libev ,两个名字相当相近的 I/O Library,最近有幸用两个 Library 都写了一些东西,下面就来说一说我本人对两者共同与不同点的主观表述。
高性能网络编程这个话题已经被讨论烂了。异步,异步,还是异步。不管是 epoll 也好,kqueue 也罢,总是免不了异步这个话题。
libuv是异步的,libev是同步的多路IO复用。
libev 是系统I/O复用的简单封装,基本上来说,它解决了 epoll ,kqueuq 与 select 之间 API 不同的问题。保证使用 livev 的 API 编写出的程序可以在大多数 *nix 平台上运行。但是 libev 的缺点也是显而易见,由于基本只是封装了 Event Library,用起来有诸多不便。比如 accept(3) 连接以后需要手动 setnonblocking。从 socket 读写时需要检测 EAGAIN 、EWOULDBLOCK 和 EINTER 。这也是大多数人认为异步程序难写的根本原因。
libuv 则显得更为高层。libuv 是 joyent 给 Node 做的一套 I/O Library 。而这也导致了 libuv 最大的特点就是处处回调。基本上只要有可能阻塞的地方,libuv 都使用回调处理。这样做实际上大大减轻了程序员的工作量。因为当回调被 call 的时候,libuv 保证你有事可做,这样 EAGAIN 和 EWOULDBLOCK 之类的 handle 就不是程序员的工作了,libuv 会默默的帮你搞定。
<?php | |
namespace AppBundle\EventListener; | |
use Symfony\Component\HttpFoundation\Session\Session; | |
use Symfony\Component\Security\Http\Event\InteractiveLoginEvent; | |
class UserLocaleListener |
<?php | |
namespace AppBundle\DataFixtures\Processor; | |
use Doctrine\ORM\EntityManager; | |
use Gedmo\Tool\Wrapper\AbstractWrapper; | |
use Gedmo\Translatable\Translatable; | |
use Gedmo\Translatable\TranslatableListener; | |
use Nelmio\Alice\ProcessorInterface; |
<?php | |
$challenge = $_REQUEST['hub_challenge']; | |
$verify_token = $_REQUEST['hub_verify_token']; | |
// Set this Verify Token Value on your Facebook App | |
if ($verify_token === 'testtoken') { | |
echo $challenge; | |
} | |
$input = json_decode(file_get_contents('php://input'), true); |