| ▲ | tonymet 4 hours ago | ||||||||||||||||
we need more standardized BOM reporting. a common signal "kill -s BOM <PID>" that has the process dump it's BOM to /dev/ttys3 . the lowest-level most common / primitive interface. no APIs, exec()s needed. 75% of the problem is the detective work identifying among 1000 dependency trees running in your datacenter, and reporting the BOMs typically requires a bespoke step for each one. Every process should take a dump-BOM signal to make gathering the BOM from every cpu common , quick & instant. | |||||||||||||||||
| ▲ | Normal_gaussian 3 hours ago | parent | next [-] | ||||||||||||||||
Its probably better to embed clearer strings in the binary that conform to some spec. Then searching over binaries would find them. Trying to respond to a signal is a nightmare of routing and lifecycle bugs. Never mind the fact that most dependencies won't be registered. Currently file/process signature matching is ok for major runtimes, and tends to fail on specific version detection. This would effectively formalise that. I could see it being a successful standardisation for major runtimes and many libraries that wouldn't currently be detected - but take up would never be universal. A kind of CVE search stamp. | |||||||||||||||||
| |||||||||||||||||
| ▲ | kg 3 hours ago | parent | prev [-] | ||||||||||||||||
You'd still need a spec for this because of cross-language considerations, but that doesn't make it a bad idea. i.e. if an app is written in javascript and running on mac there are potentially 4 different languages all running inside the executable that need to cooperate to handle the BOM signal and report their deps - C/ObjC, Swift, C++ and JS. Presumably you'd want to report not only the native libraries being used in the process but also things like npm packages. | |||||||||||||||||
| |||||||||||||||||