Place the lentils in a strainer and rinse under cool water. Set aside.
Heat the oil in a medium pot over medium heat. Fry the onion until soft and transparent then add the ginger and garlic and fry for another 30 seconds to a minute until soft and fragrant.
Add in the curry powder and cayenne pepper or Kashmiri chili powder and cook, stirring, for another 30 seconds or until the spices are fragrant.
Add in the lentils, can of diced tomatoes, 1 ½ cups (375 ml) of the vegetable broth and salt. Bring to a boil then reduce the heat to a gentle simmer and partially cover the pot with the lid.
Simmer gently until the lentils are tender and most of the broth is absorbed - about 15 to 20 minutes. If the pan seems to be running dry before the lentil are soft, add the remaining vegetable stock as needed (I used 1 ¾ cups total stock when I made this last time).
Stir in the garam masala.
Serve with rice and garnish with fresh cilantro and a slice of lime, if desired.