Magic symlinks redux

Ivan Voras ivoras at freebsd.org
Fri Aug 22 10:24:58 UTC 2008


Andrey V. Elsukov wrote:
> Luigi Rizzo wrote:
>> interestingly simple.
>>
>> Question - is the process' ENV easily available in this part
>> of the kernel, so one could in principle use environment variables
>> as replacement strings ?

> This was so long ago.. As i remember this patch is a quick port of
> NetBSD's implementation and uses the same code.
> 
> Also there was another implementation ported from DragonFlyBSD.
> David Quattlebaum is working on varsyms implementation and he sent
> fresh patch to me in this April. I attached patch.
> And sorry, i am not working on this today..

This patch is huge. As far as I can tell DragonflyBSD has a whole 
framework dedicated to varsyms, spread across a fair part of the kernel 
and with at least one special userland utility. It allows the operator 
to define his own variables that can be used in the substitutions, and I 
don't see that it predefines "special" variables like "uid" and 
"hostname". It's not necessarily a bad solution but I consider it overkill.

Anyway, the syntax of DFBSD's varsyms is similar but sufficiently 
different from NetBSD's magicsyms implementation that both can coexist. 
DFBSD uses  ${var} and NetBSD uses @var or @{var} so there's no 
ambiguity between them.

Unless a kernel developer is interested in working the DFBSD's 
implementation in, I'll push the NetBSD's variant.



More information about the freebsd-arch mailing list