A recursive CTE is a pretty easy method:
with dates as (
      select effdate as dte, enddate
      from t
      union all
      select dateadd(day, 1, dte), enddate
      from dates
      where dte < enddate
     )
select dte
from dates
option (maxrecursion 0);
Often a tally table has somewhat better performance:
with digits as (
      select v.n
      from (values (0), (1), (2), (3), (4), (5), (6), (7), (8), (9)) v(n)
     ),
     n as (
      select (d1*1000 + d2*100 + d3*10 + d4*1) n
      from digits d1 cross join
           digits d2 cross join
           digits d3 cross join
           digits d4 
     )
select dateadd(day, n.n, t.effdate)
from t join
     n
     on dateadd(day, n.n, t.effdate) <= t.enddate  ; 
You have to be sure that your table of numbers -- however generated -- is big enough for your timespan.