sysctl variable question

Julian Elischer julian at freebsd.org
Sun Dec 18 21:12:46 UTC 2011


On 12/18/11 12:18 PM, Fernando Apesteguía wrote:
> Hi all,
>
> I'm writing a small module just for fun. I would like to have two variables:
>
> - "pid" of type unsigned int and RW so the user can set a pid
> - "process_name" as a string RD that will display the process name
> associated to that pid (or a message if the pid doesn't exist anymore)

this is dangerous as there are some places in the kernel where processes
are referenced by pid, so changing it may break kernel assumptions.
> My problem is with the handler functions. For "process_name", as it is
> read only, I wrote a simple handler that works fine. However, I want
> to write another one for "pid" so I can sanitize the input (avoiding
> pids<  0 and so). As I understand, the handler I specify with
> SYSCTL_OID will be called for both reads and writes. But, how can I
> tell what kind of operation is it, so I know if I have to use
> SYSCTL_OUT or SYSCTL_IN? I tried to have a look at sysctl_handle_int
> but I don't fully understand what is going on with the arg1 parameter.
> What is it for?
>
> Thanks in advance.
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
>



More information about the freebsd-hackers mailing list