Test the saltiness of your ham by slicing a small piece off the end and frying it in a little oil. If the ham is very salty, you will need to soak it for 12 hours in cold water, changing the water once. If your ham is quite salty, place the joint in a very large pan, cover with cold water, bring to the boil. Drain and discard the cooking water.
Once the ham is ready to cook, put the joint into a large pan, cover with fresh cold water and add the leeks, onion, carrot, peppercorns, and bay leaves. Bring to the boil, cover with a lid then simmer the ham for about 20 minutes per 450g/1lb. To test that the ham is cooked, stick a cold skewer down into the centre of the ham and leave it for 10 seconds. Take it out and test it carefully against your lip. It should be piping hot.
Let the ham cool a little in its cooking liquid, then carefully lift it out and onto a board. (The liquid can be used as a delicious stock for split pea soup and other recipes.) Leave the ham to cool a little.
Using a small sharp knife, carefully cut the skin from the ham, leaving behind a good even layer of fat.
Score the fat into a diagonal criss-cross pattern with a sharp knife. The ham can now be chilled for up to two days, or you can bake it straight away.
Preheat the oven to 220C/200C Fan/Gas 7.
Grind the coriander seeds in a pestle and mortar. In a bowl, mix the grated orange zest and sugars, then add the ground coriander seeds. Sift the mustard powder evenly over the ham, then scatter the sugar mixture over the work surface and roll the ham in the mixture to coat the fat. Push a clove into the centre of each diamond in the fat of the ham. Drizzle over the honey.
Cover the exposed end of the ham loosely with foil, securing with a few toothpicks. Place the ham on a rack inside a roasting tin and bake the ham for 15 minutes until the glaze is sticky and crisp, maybe even a little charred here and there. Eat hot or cold.