Skip to content

Instantly share code, notes, and snippets.

View rurban's full-sized avatar

Reini Urban rurban

View GitHub Profile
/***********************************************************************
* connect.c -- Make socket connection using SOCKS4/5 and HTTP tunnel.
*
* Copyright (c) 2000-2006 Shun-ichi Goto
* Copyright (c) 2002, J. Grant (English Corrections)
* Copyright (c) 2010, Reini Urban (added realm to http_auth basic)
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
@rurban
rurban / log.asan-ubsan
Last active July 25, 2022 07:37
Testing openssl with -DOPENSSL_NO_BUF_FREELISTS and -fsanitize=undefined
Note that OpenBSD also disabled the openssl freelist "optimization".
CFLAGS+= -DOPENSSL_NO_BUF_FREELISTS -DOPENSSL_NO_HEARTBEAT
http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libssl/ssl/Makefile?rev=1.29;content-type=text%2Fx-cvsweb-markup
I used:
CC= clang
CFLAG+= -O3 -fsanitize=address -fsanitize=undefined -DOPENSSL_NO_BUF_FREELISTS -g
I also created a more readable version at https://github.com/rurban/openssl
@rurban
rurban / dwg11.c
Last active April 15, 2022 08:01
dwg r11 parser
/* Scan DWG program -- for scanning a DWG file
Copyright (C) 1995, 1996 Frans Faase, Reini Urban
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
@rurban
rurban / blog-todo.md
Created September 17, 2012 23:04
My perl5 TODO list

My perl5 TODO list

Below is a formal list of possible optimizations, which most would agree on. We had these discussion in 2001 with damian were perl6 and perl5i took off. I'd like to work on these for perl5 core and need decisions. Most p5p hackers seem to be informed about the general possibilities and directions, but not all. We'd need this to improve general perl5 performance, and also help static compilation.[1]

@rurban
rurban / linkorder.log
Last active October 22, 2018 12:47
Search best cperl .o permution
make: Nothing to be done for 'miniperl'.
0 1.451963
0 1.453744
# perlmini miniperlmain gv toke perly opmini pad sv hv av run pp_hot ppmini pp_type scope pp_ctl pp_sys doop doio regcomp util xsutilsmini mg keywords regexec utf8 globals universal
# 27 1
0 1.462567
# perlmini miniperlmain gv toke perly opmini pad sv hv av run pp_hot ppmini pp_type scope pp_ctl pp_sys doop doio regcomp util xsutilsmini mg keywords regexec utf8 universal globals
# 27 2
0 1.455446
# perlmini miniperlmain gv toke perly opmini pad sv hv av run pp_hot ppmini pp_type scope pp_ctl pp_sys doop doio regcomp util xsutilsmini mg keywords regexec utf8 globals universal
@rurban
rurban / warn-shadow-pkg.pl
Last active August 3, 2018 07:14
use warnings 'shadow-package'
# detected by mziescha
use warnings 'shadow-package'; # or just shadow
package Acme::Test;
sub new { bless {}, shift }
sub Sub { 'shadowed' }
package Acme::Test::Sub;
sub new { print 'Sub'; bless {}, shift } # warn: "Package Acme::Test::Sub shadowed by Acme::Test->Sub at warn-shadow-pkg.pl, line 8"

Keybase proof

I hereby claim:

  • I am rurban on github.
  • I am rurban (https://keybase.io/rurban) on keybase.
  • I have a public key ASA4zOnAYHaV6V5Kkbs121Eju-DcyNamr0ZIRsNpVBDwRAo

To claim this, I am signing this object:

@rurban
rurban / asan_addr2dis
Created November 24, 2011 19:41
asan_addr2dis
#!/usr/bin/perl
#
# Symbolize AddressSanitizer stacktraces via objdump -Sd.
# Expands the 0 frame srcline and for subsequent frames only the function name.
#
# OPTIONS:
# -l prints all lines, without -l only the expanded stacktraces.
# -f<n> disassembles the first n stackframes, not only the first
# -f0 disassembles all stackframes
# Copyright 2011 Reini Urban, BSD License
@rurban
rurban / i686-w64-mingw32-ddk.patch
Last active March 22, 2017 19:30
ReactOS DDK header for clisp appvoyer
rurban@cpan.org for clisp mingw64 builds
Avoid the need for -Iddk with #include <ntifs.h>
--- mingw32/i686-w64-mingw32/include/ddk/ntddk.h~ 2017-01-14 23:19:13.000000000 +0100
+++ mingw32/i686-w64-mingw32/include/ddk/ntddk.h 2017-03-22 14:46:54.000000000 +0100
@@ -35,11 +35,11 @@
#define NT_INCLUDED
#define _CTYPE_DISABLE_MACROS
-#include <wdm.h>

Perl 5 is still in business but lost lot of its market share since the announcement of Perl 6. I'll outline the technological problems with perl5 which led to perl6, the management problems, and my various attempts to get perl5 into proper shape. parrot, the perl compiler, p2 and cperl. There are interesting observations in toxic cultures and technological problems.

Session type: 40-minute presentation Topics: The new stuff Abstract

Perl 5 is still in business but lost lot of its market share since the announcement of Perl 6 in 2002.

I’ll outline the technological problems with perl5 which led to perl6, the management problems in the p5p perl community which led to serious brain drain, the various attempts to get parrot and perl6 into shape for the last 14 years and more.