$\newcommand\Z{\mathbf{Z}}$Given an integral quadratic form $q$ of signature $(n-1,1)$ and a value $\lambda \in \Z$ is there an algorithm that can determine whether there exist $x\in \Z^n$ such that $q(x) = \lambda$? If yes, are there known implementations?
I know that representation of values by quadratic form is a difficult subject with a long story, but here the quadratic form and scalars are given, so this is a very restricted form of this problem.
If someone is interested as to why I ask this, it is because I implemented Vinberg's algorithm for finding fundamental Coxeter domain of such a form and I am looking at ways to restrict the possible values of the root norms. If $G$ is the corresponding symmetric matrix of a quadratic form $h$ of signature $(n,1)$ and $v$ is a root of $h$ of norm $k$ then we have $h(v) = k$ and $(2/k) Gv \in \Z^n$. This integrality condition can be rephrased into the original problem of the question. If we an exclude some norm values beforehand, that would be a big gain as the search for roots is very expensive.
PS: See polyhedral/vinberg for the source code of this Vinberg algorithm. All comments welcomed.