Use this if you are using igraph from R
This function lists are simple paths from one source vertex to another vertex or vertices. A path is simple if the vertices it visits are not visited more than once.
all_simple_paths( graph, from, to = V(graph), mode = c("out", "in", "all", "total"), cutoff = 1 )
graph 
The input graph. 
from 
The source vertex. 
to 
The target vertex of vertices. Defaults to all vertices. 
mode 
Character constant, gives whether the shortest paths to or
from the given vertices should be calculated for directed graphs. If

cutoff 
Maximum length of path that is considered. If negative, paths of all lengths are considered. 
Note that potentially there are exponentially many paths between two vertices of a graph, and you may run out of memory when using this function, if your graph is latticelike.
This function currently ignored multiple and loop edges.
A list of integer vectors, each integer vector is a path from the source vertex to one of the target vertices. A path is given by its vertex ids.
g < make_ring(10) all_simple_paths(g, 1, 5) all_simple_paths(g, 1, c(3,5))