There's a persistent rumor (at least where I live) that all hollow bones (like those in legs) are harmful to dogs and all non-hollow bones (like ribs and shoulder blades) are safe. This myth is wrong. It's rather correct that all raw bones are safe for dogs and all cooked ones are harmful.
Raw bones are no danger to dogs because they're part of their natural diet. The digestive tract is built to break down raw meat, bones and hide. What it cannot cope with is too much calcium at once, which happens if you feed cooked bones. The dogs often become constipated and you can see all the calcium in the white poop they leave behind.
The teeth are the hardest material in any mammal's body and thereby harder than bones. Chewing bones also provides calcium for healthy teeth. Of course you should feed bones relative to your dog's size, but in theory even a small dog can chew a big bone.
A raw bone is constructed of organic material that makes it elastic and minerals that make it rigid and hard. Breaking it down takes time and the digestive tract can cope with the amount of minerals that are ingested.
Cooking breaks down most of the organic material in a bone and leaves only the mineral structure intact. That makes the bone brittle and easier to break down. It can splinter while being chewed, causing injuries or choking. The amount of minerals ingested is much higher than naturally possible and the digestive tract cannot cope with it, causing constipation.
If you have had a meal and want to give some waste to your dog as a treat, give them the cartilage. It's easy to cut from cooked bones and has some health benefits for your dog's joints. It's a much better and safer alternative to feeding cooked bones.