#Java 10, 62 59 58 bytes
Java 10, 62 59 58 bytes
n->{var r=n;for(;!(r+"").matches("[01]+");)r+=n;return r;} Explanation:
n->{ // Method with long as both parameter and return-type var r=n; // Result-long, starting at the input for(;!(r+"").matches("[01]+");) // Loop as long as `r` does NOT consists of only 0s and 1s r+=n; // Increase `r` by the input return r;} // After the loop is done, return `r` as result This method above only works for binary outputs \$\leq1111111111111111111\$. For arbitrary large outputs - given enough time and resources - the following can be used instead (99 70 64 bytes):
n->{var r=n;for(;!(r+"").matches("[01]+");)r=r.add(n);return r;}