After upgrading ppp from 2.4.4 to 2.4.5 the package net-dialup/pptpd had compatibility problems caused by checking current ppp-version-string. so pptpd didn't work:
pptpd: CTRL: Starting call (launching pppd, opening GRE)
pppd: Plugin /usr/lib/pptpd/pptpd-logwtmp.so is for pppd version 2.4.4, this is 2.4.5
pptpd: GRE: read(fd=6,buffer=8058640,len=8196) from PTY failed: status = -1 error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs
re-emerging (and restart) pptpd fixes the problem.
we should add a postinst message to the ebuild after upgrade.
I am planning to fix this by adding subslot operator where this is needed.
This is fixed in 2.4.6 ebuild by adding sub-slot operator