Stand up and be counted - BSDStats Project

Olivier Nicole on at cs.ait.ac.th
Fri Aug 4 03:14:19 UTC 2006


> pciconf -lv needs to be parsed, this being the hard step, into a string 
> that can be sent via HTTP ... this is the hard part because it has to be 
> done as/in a shell script ... anyone out there *really* good at shell 
> programming?

Why not doing the parsing on the server?

Is there a limit on the size of an HTTP GET request? If not, the
output of pciconf -v can fit in one single request, done.

And limiting the number of requests, you also limit the amount of data
xfered.

I'd also go for:

pciconf -l | sed s/\ /+/g | sed s/\   /%09/g| sed s/@/%40/g | sed s/:/%3a/g| sed s/=/%3d/g

and you get lines like:

hostb0%40pci0%3a0%3a0%3a%09class%3d0x060000+card%3d0x341a8086+chip%3d0x254c8086+rev%3d0x01+hdr%3d0x00
none0%40pci0%3a0%3a1%3a%09class%3d0xff0000+card%3d0x341a8086+chip%3d0x25418086+rev%3d0x01+hdr%3d0x00

That are almost completely URL encoded. Remains to replace the newline
into %0d, and you are done. Result is one line that is around 2000
characters.

olivier


More information about the freebsd-questions mailing list