I use this against the London. Is it right?
No. You can't get away with 4..c5.
It looks pretty bad if white takes your b8 knight and then gives check.
you can play 2 bf5. it's too dry for my taste. 3 c4 for example, going for the central break before black can execute bxb1 and the check on b4, so that now white has time for nc3 next. maybe 3..c5 is playable but i don't like lines where white decides whether to keep it boring or play for imbalances, as here.
if you go for the setup with c6 instead you risk getting cramped with c4 nc3 qb3 and so on.
there is a setup where black plays nf6, e6, bd6, 00 and b6 and only then decide to play c5 or ba6(b7) depending on circumstances. it avoids some of white's lines against the early c5.