История изменений
      
        Исправление
      nanoolinux,
      
        (текущая версия)
      :
    
Вот тебе конвертер на эрланге. За пять с половиной минут можно написать тсп сервер, и повесить на vps. Но это уже другая история.
conv(Bin) ->
  {A,B,C,D} = parce(Bin),
  <<A:32, B:32, C:32, D:32>>.
parce(B) ->
  <<V:1, Rest/binary>> = B, % one byte for version, for example.
  case V of
    0 -> parce(v1, Rest);
    1 -> parce(v2, Rest);
    2 -> parce(v3, Rest)
  end.
parce(v1, <<A:32, B:16, C:8, D:8>>) -> {A,B,C,D};
parce(v2, <<A:32, B:16, C:16, D:8>>) -> {A,B,C,D};
parce(v3, <<A:32, B:16, C:16, D:16>>) -> {A,B,C,D}.
      
        Исходная версия
      nanoolinux,
      :
    
Вот тебе конвертер на эрланге. За пять с половиной минут можно написать тсп сервер, и повесить на vps. Но это уже другая история.
conv(B) ->
  {A,B,C,D} = parce(B),
  <<A:32, B:32, C:32, D:32>>.
parce(B) ->
  <<V:1, Rest/binary>> = B, % one byte for version, for example.
  case V of
    0 -> parce(v1, Rest);
    1 -> parce(v2, Rest);
    2 -> parce(v3, Rest)
  end.
parce(v1, <<A:32, B:16, C:8, D:8>>) -> {A,B,C,D};
parce(v2, <<A:32, B:16, C:16, D:8>>) -> {A,B,C,D};
parce(v3, <<A:32, B:16, C:16, D:16>>) -> {A,B,C,D}.