"I never ran into the CNID issue when using Netatalk on our Mac OS 8 systems."
That's good! Unfortunately I did, and so did many others. A quick perusal of the old mailing lists will turn up plenty of this. We tried a test rollout in a division of a Fortune 50 company, and our backups saved us -- when a user noticed a file was missing, that is.
"I seem to recall contributing all of one patch to netatalk, and that wasn't because I was an evil corporate code stealer."
Excellent! All patches were appreciated. We could've used more of that. (And we'd have happily accepted patches from the storage vendors, they just wouldn't play ball. I don't think any of us felt the corporations were "evil," just that they were behaving like ... moochers.)
"How many of those actually significantly contribute back to the project? I count three active committers."
First, that's misleading. The three active committers take patches from others as they please. So to get a true picture you'd need to go through the mailing list and see where all the patches originally came from. And I haven't been involved in the project for some years, so you'll need to go research that yourself.
Second, you've completely missed the point. And it's one you should really like.
Netatalk entered a sick state because the people who had the desireable patches chose to hold them back. The BSD license allowed them to do so. Then other developers came in and said, we'll commit our patches, but we want a guarantee that those who ship our work will have to do the same. And that was enough to motivate them to make Netatalk fully mature -- every significant enhancement/fix implemented privately became available publicly, and more, thanks to those devs.
And what was the outcome for ALL of Netatalk's users? The storage vendors were happy because they could stop maintaining their private forks and just ship from upstream. The users were happy because all these bugs were fixed and they had a responsive place to seek help. The devs were happy because they were assured that they were now on equal terms with the storage vendors. Whether the vendors continued development or not wasn't actually the issue.
So everybody won, the users, the developers and the storage vendors.
No, the GPL didn't write the code, but the BSD license allowed the code to remain private, and that's where everybody started losing. The GPL assured everyone that that couldn't ever happen again, which, as it turned out in this case, was a necessary precondition to success.