No, not in general. Take $C=\mathbb{P}^1$, $L=\mathcal{O}(1)$, $p$ to be map $x\mapsto x^2$ in affine coordinates. Then $p_*L$ has rank $2$, but  
$$2=h^0(L)=h^0(p_*L)=h^0(\mathcal{O}(e_1))+h^0(\mathcal{O}(e_2))$$ 
If $e_1$ and $e_2$  were both positive, then term on the right would be at least $4$. So this is impossible.