<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2076511595662355803</id><updated>2024-08-31T13:53:48.321+03:00</updated><category term="freebsd"/><category term="pefs"/><category term="l2filter"/><category term="dircache"/><title type='text'>Gleb Kurtsou</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Gleb Kurtsou</name><uri>http://www.blogger.com/profile/05235148235254521396</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhL1UgK5ItXd1rPK4Y6HZ6dVnEF3_dJLfjdOgANeZncLHaKzpqEjLHV1-Db8-55SYb16Zh7UDxBqdRI1VoHNzE2-QXy7Z55wHwAOSuHeKrsmTjalTq1E7SrJQAnnxDyxEc/s220/gleb_lnk.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>17</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-5087084364895168803</id><published>2012-12-28T22:29:00.001+03:00</published><updated>2012-12-28T23:07:47.454+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>New projects hosting</title><summary type="text">github has recently disabled downloads feature sysutils/pefs-kmod port was relaying on. github downloads were frustrating but less hassle than hosting PEFS elsewhere and having to deal with two bug trackers,&amp;nbsp;repositories, etc.

Downloads moved to code.google.com, but I intend to continue using github for bug tracking and as main source repository.

PEFS -&amp;nbsp;code.google.com/p/pefs
ggateu -</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/5087084364895168803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2012/12/new-projects-hosting.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/5087084364895168803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/5087084364895168803'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2012/12/new-projects-hosting.html' title='New projects hosting'/><author><name>Gleb Kurtsou</name><uri>http://www.blogger.com/profile/05235148235254521396</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhL1UgK5ItXd1rPK4Y6HZ6dVnEF3_dJLfjdOgANeZncLHaKzpqEjLHV1-Db8-55SYb16Zh7UDxBqdRI1VoHNzE2-QXy7Z55wHwAOSuHeKrsmTjalTq1E7SrJQAnnxDyxEc/s220/gleb_lnk.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-6061495688854906551</id><published>2012-08-21T07:09:00.001+03:00</published><updated>2012-08-21T21:09:24.611+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>A sunday well spent</title><summary type="text">
Two month ago I&#39;ve decided to encrypt some personal files, which wasn&#39;t a big deal thanks to stacked crypto file system we have in FreeBSD :) This weekend I&#39;ve realized that the worst thing that could possibly happen to encrypted data did actually happen -- I couldn&#39;t recall the password.

Decision was made to roll back ZFS transactions to recover deleted snapshot. Performing such dangerous </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/6061495688854906551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2012/08/sunday-well-spent.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/6061495688854906551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/6061495688854906551'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2012/08/sunday-well-spent.html' title='A sunday well spent'/><author><name>Gleb Kurtsou</name><uri>http://www.blogger.com/profile/05235148235254521396</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhL1UgK5ItXd1rPK4Y6HZ6dVnEF3_dJLfjdOgANeZncLHaKzpqEjLHV1-Db8-55SYb16Zh7UDxBqdRI1VoHNzE2-QXy7Z55wHwAOSuHeKrsmTjalTq1E7SrJQAnnxDyxEc/s220/gleb_lnk.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-2602651029325675567</id><published>2012-04-10T17:46:00.000+03:00</published><updated>2012-08-20T22:39:36.801+03:00</updated><title type='text'>Ancient code</title><summary type="text">
Graphics mode in recently release links 2.6 changelog[1] sounded vaguely familiar. So I&#39;ve started googling for my first non-trivial contribution to a open source project. It was in 2003 - nearly 9 years ago[2]. I wish I have that patch to look at :D



http://www.mailinglistarchive.com/elinks-dev@linuxfromscratch.org/msg01281.html



[1] http://www.opennet.ru/opennews/art.shtml?num=33567

[2] </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/2602651029325675567/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2012/04/ancient-code.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/2602651029325675567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/2602651029325675567'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2012/04/ancient-code.html' title='Ancient code'/><author><name>Gleb Kurtsou</name><uri>http://www.blogger.com/profile/05235148235254521396</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhL1UgK5ItXd1rPK4Y6HZ6dVnEF3_dJLfjdOgANeZncLHaKzpqEjLHV1-Db8-55SYb16Zh7UDxBqdRI1VoHNzE2-QXy7Z55wHwAOSuHeKrsmTjalTq1E7SrJQAnnxDyxEc/s220/gleb_lnk.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-1803303443387139198</id><published>2011-04-14T23:46:00.005+03:00</published><updated>2011-04-15T03:01:07.581+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>Secure backups for a lazy developer</title><summary type="text">Developer is always afraid of loosing source code. As a rule after crash you&#39;ll be able restore all but several last revisions, or you&#39;ll get sources but have repository damaged. It doesn&#39;t happen often, but it&#39;s better to feel safe.

Backup of a central repository on server and personal project backup are two very different stories. Developers are too lazy to use server-like backup&amp;nbsp; methods</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/1803303443387139198/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2011/04/secure-backups-for-lazy-developer.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1803303443387139198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1803303443387139198'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2011/04/secure-backups-for-lazy-developer.html' title='Secure backups for a lazy developer'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-561039951163901533</id><published>2011-01-22T09:12:00.000+02:00</published><updated>2011-01-22T09:12:15.055+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>PEFS changelog</title><summary type="text">PEFS changelog since September 2010: 
Add AESNI hardware acceleration support.
Several rename fixes: vnode reference leak, incorrect locking, livelock, missing lookup(), always perform nfs-style dummy rename.
Skip directory entries with zero inode number (empty entry) (could result in reusing invalid entries).
Fix mounting ZFS snapshots (incorrect vn_fullpath locking).
Reduce possibility of free </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/561039951163901533/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2011/01/pefs-changelog.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/561039951163901533'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/561039951163901533'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2011/01/pefs-changelog.html' title='PEFS changelog'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-6696072916085305060</id><published>2010-09-07T01:50:00.003+03:00</published><updated>2010-09-07T01:52:23.488+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>XTS support in pefs</title><summary type="text">I&#39;ve replaced CTR encryption mode with XTS. Salsa20 stream cipher was also removed. CTR mode was inappropriate design for a filesystem, and allowed encrypted data to be easily manipulated by attacker and could even reveal plantext in cases when previous encrypted data snapshots where available to attacker, i.e. filesystem level snapshots. There should be no visible performance degradation because</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/6696072916085305060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2010/09/xts-support-in-pefs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/6696072916085305060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/6696072916085305060'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2010/09/xts-support-in-pefs.html' title='XTS support in pefs'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-3554051171822459899</id><published>2010-05-06T02:23:00.000+03:00</published><updated>2010-05-06T02:23:21.064+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="dircache"/><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>Projects status</title><summary type="text">The oldest project l2filter is almost certainly doomed. Patch no longer apply after ipfw3 was imported to -CURRENT and then merged to 8-STABLE. It still applies to 7-STABLE, but I don&#39;t use 7-STABLE. Merging only support for layer2 filtering with pfil and pf should be rather trivial. I&#39;d like to keep patches in sync with recent -CURRENT but.. no time, no testers.

pefs looks much better. I keep </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/3554051171822459899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2010/05/projects-status.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/3554051171822459899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/3554051171822459899'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2010/05/projects-status.html' title='Projects status'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-3421884365087929536</id><published>2009-12-08T20:16:00.003+02:00</published><updated>2010-01-16T21:03:00.775+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>pefs and l2filter moved to github</title><summary type="text">I&#39;ve just moved pefs and l2filter development to github. Hope it helps people to follow development.

pefs repository (github.com/glk/pefs) can be used to to compile and run pefs without applying any patches.

pefs changelog:
support running on msdosfs
enable dircache only on file systems that are known to support it
add man page
add pefs getkey command
intial implementation of pefs PAM module
</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/3421884365087929536/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2009/12/pefs-and-l2filter-moved-to-github.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/3421884365087929536'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/3421884365087929536'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2009/12/pefs-and-l2filter-moved-to-github.html' title='pefs and l2filter moved to github'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-4699172198300369521</id><published>2009-10-16T20:08:00.004+03:00</published><updated>2010-01-16T20:19:10.982+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>pefs dircache benchmark</title><summary type="text">I&#39;ve recently added directory caching into pefs.Despite of being directory listing cache (like dirhash for ufs) it also acts as encrypted file name cache. So that there is no need to decrypt names for the same entries all the time. That was really big issue because directory listing has to be reread on almost every vnode lookup operation. It made operations on directories with 1000 and more files</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/4699172198300369521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2009/10/pefs-dircache-benchmark.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/4699172198300369521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/4699172198300369521'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2009/10/pefs-dircache-benchmark.html' title='pefs dircache benchmark'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLjLYpYY2u5CemY8mR2fyXCquv0bvuBlcSEtMk6LSl8heBWzQ81IO63MS5r3DRwHKI0sLM_sLnqkEdTZ1aos_tgOzIz7TDV7321sGW4CEpfkCcEUWE8vz1IYi8cqDD3jpU1RJVPBUNfCo/s72-c/pefs-dircache-dbench.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-669074989033421399</id><published>2009-10-01T20:06:00.007+03:00</published><updated>2010-01-16T21:10:13.104+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>Encrypting private directory with pefs</title><summary type="text">pefs is a kernel level cryptographic filesystem. It works transparently on top of other filesystems and doesn&#39;t require root privileges. There is no need to allocate another partition and take additional care of backups, resizing partition when it fills up, etc.

After installing pefs create a new directory to encrypt. Let it be ~/Private:

% mkdir ~/Private

And mount pefs on top of it (root </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/669074989033421399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2009/10/encrypting-private-directory-with-pefs.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/669074989033421399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/669074989033421399'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2009/10/encrypting-private-directory-with-pefs.html' title='Encrypting private directory with pefs'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-7780141166641164172</id><published>2009-09-23T20:03:00.003+03:00</published><updated>2010-09-07T18:19:13.080+03:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>pefs crypto primitives (updated)</title><summary type="text">Supported data encryption algorithms: AES and Camellia (with 128, 192 and 256 bits key sizes). Adding another block cipher with 128 block size should be trivial.

File names are always encrypted using AES-128 in CBC mode with zero IV. Encrypted file name consists of a unique per file tweak, checksum and name itself:
XBase64(checksum || E(tweak || filename))

Checksum is VMAC of encrypted tweak </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/7780141166641164172/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2009/09/pefs-crypto-primitives.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/7780141166641164172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/7780141166641164172'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2009/09/pefs-crypto-primitives.html' title='pefs crypto primitives (updated)'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-8374043624255437088</id><published>2009-09-16T19:55:00.005+03:00</published><updated>2010-01-16T20:03:07.274+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="pefs"/><title type='text'>pefs benchmark</title><summary type="text">pefs is a stacked cryptographic filesystem for FreeBSD. It has started as a Goggle Summer of Code&#39;2009.I&#39;ve just come across performance comparison of eCryptfs against plain ext4 filesystem on Ubuntu, benchmark I was going to perform on my own.I run dbench benchmarks regularly while working on pefs. But use it mostly as a stress test tool. I haven&#39;t reached the point I can start working on </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/8374043624255437088/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2009/09/pefs-benchmark.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/8374043624255437088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/8374043624255437088'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2009/09/pefs-benchmark.html' title='pefs benchmark'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj8q-Lw5AULt8vwZKlFWpvUbfxVmFQGsTu5W251ESym51aVUF2gyvpG858fi-5WedbIAA4TSsKENLA2DFtb-ngzNekUwmGfyGJSv9brXiu1SqCEBwj8abD3DsL6xFNy4D9bLqqz6OjGR4/s72-c/dbench-4clients.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-1902886656575858052</id><published>2009-03-24T19:48:00.003+02:00</published><updated>2010-01-16T19:53:53.965+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><title type='text'>Layer2 dummynet</title><summary type="text">Haven&#39;t posted about progress with lyear2 filtering for a while. One notable improvement is addition of ethernet address masks to dummynet.Just configure a pipe. New masks available: src-ether and dst-ether (and a shortcut for specifying both of them: ether)# ipfw pipe 1 config bw 1Mb mask etherAnd use it:# ipfw add 1100 pipe 1 src-ether 00:11:11:11:11:11 dst-ether 00:22:22:22:22:22 out via </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/1902886656575858052/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2009/03/layer2-dummynet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1902886656575858052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1902886656575858052'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2009/03/layer2-dummynet.html' title='Layer2 dummynet'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-1282211271687358720</id><published>2008-11-23T19:47:00.001+02:00</published><updated>2010-01-16T19:48:42.531+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><title type='text'>ipfw: layer2 lookup tables</title><summary type="text">I had an opportunity to spend some extra time improving layer2 filtering.I&#39;ve extended lookup tables in ipfw to support several layer2 addresses for a single layer3 address/mask. It means that it&#39;s possible to assign mac addresses to network (in case ip&#39;s are dynamically distributed by dhcp or whatever). Besides, wildcard ip address &#39;any&#39; is supported, and entries with wildcard ip can be used for</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/1282211271687358720/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2008/11/ipfw-layer2-lookup-tables.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1282211271687358720'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1282211271687358720'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2008/11/ipfw-layer2-lookup-tables.html' title='ipfw: layer2 lookup tables'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-1060614104737702329</id><published>2008-07-30T19:39:00.003+03:00</published><updated>2010-01-16T19:54:06.702+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><title type='text'>Layer2 filtering with pf</title><summary type="text">Instead of trying to describe all the changes regarding layer2 filtering in pf I&#39;d better provide some examples.Ethernet address can be specified for host or interface name:pass in on bridge0 from 10.0.0.1 ether 00:11:11:11:11:11 to 10.0.0.2 ether 00:22:22:22:22:22pass in on bridge0 from ($int_if:network) ether 00:11:11:11:11:11 to anyEthernet addresses are supported in table entries:table &amp;lt;</summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/1060614104737702329/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2008/07/layer2-filtering-with-pf.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1060614104737702329'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1060614104737702329'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2008/07/layer2-filtering-with-pf.html' title='Layer2 filtering with pf'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-1681057676606068755</id><published>2008-06-29T19:37:00.001+03:00</published><updated>2010-01-16T19:54:19.049+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><title type='text'>Filtering on bridge</title><summary type="text">There used to be a flaw in using ipfw on bridge interface. It&#39;s impossible to distinguish incoming packets on member interface from incoming packets on bridge itself. For example consider two rules:add 1 allow ip from any to any in recv bridgeadd 2 allow ip from any to any in recv memberFirst rule will never match. The logic is ok here (if you are aware of ipfw&#39;s handling of interface options). </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/1681057676606068755/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2008/06/filtering-on-bridge.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1681057676606068755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/1681057676606068755'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2008/06/filtering-on-bridge.html' title='Filtering on bridge'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2076511595662355803.post-2922060937196708892</id><published>2008-06-22T19:36:00.003+03:00</published><updated>2010-01-16T19:54:33.668+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="freebsd"/><category scheme="http://www.blogger.com/atom/ns#" term="l2filter"/><title type='text'>Incompatibility and some new features</title><summary type="text">I&#39;ve made some changes that break backward compatibility. But I&#39;ve tried not to break anything intentionally but to do a cleanup work.First of all most of sysctl&#39;s responsible for layer2 filtering were replaced by per interface flags.net.link.ether.ipfw and net.link.bridge.ipfw are replaced by l2filter interface flag. So sysctl net.link.ether.ipfw=1 became ifconfig if1 </summary><link rel='replies' type='application/atom+xml' href='http://glebkurtsou.blogspot.com/feeds/2922060937196708892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://glebkurtsou.blogspot.com/2008/06/incompatibility-and-some-new-features.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/2922060937196708892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2076511595662355803/posts/default/2922060937196708892'/><link rel='alternate' type='text/html' href='http://glebkurtsou.blogspot.com/2008/06/incompatibility-and-some-new-features.html' title='Incompatibility and some new features'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>