Uma caixa de ligação em geral é a menor caixa retangular que conterá um objeto. Não posso falar sobre a função exata de GeoHashArea em redis, mas como você implica que eles têm um propósito semelhante, se ambos representarem uma área geográfica, GeoHashArea certamente será uma representação poligonal mais detalhada de uma área do que um simples retângulo como geohashBoundingBox.
Para sua segunda pergunta, presumivelmente, já que as variáveis
long_range
e lat_range
são passados por referência, há uma chance de que geohashEncode(&long_range, &lat_range, longitude, latitude, steps, &hash);
modifica seu valor e assim a função
geohashGetCoordRange
é chamado novamente nos diferentes valores.