Preheat oven to 200°C (approximately 400°F). Rinse lamb, pat dry and season with salt and pepper on all sides.
Rinse rosemary, shake dry and pluck branches from stem. With a sharp knife carefully carve a diamond pattern in the leg of lamb and rub with rosemary.
Place the drip tray in a roasting pan. Cut onion in half, place in the roasting pan, and place lamb on top. Drizzle lamb with little oil and let cook for about 30 minutes in the preheated oven. Then reduce oven temperature to 160°C (approximately 350°F), remove the drip pan, place the lamb back in the roasting pan, cover with stock and simmer in the oven for another 1-1 1/2 hours. Baste lamb every now and then with the roasting juices and season with salt and pepper. Serve while still hot.