BenMenking / routeros-api

Client API for RouterOS/Mikrotik
337 stars 271 forks source link

Login method post-v6.43 #28

Closed Mackiavelly closed 6 years ago

scottchiefbaker commented 6 years ago

Is this required to connect to RouterOS 6.43+?

Mackiavelly commented 6 years ago

yes

BenMenking commented 6 years ago

@Mackiavelly thank you for implementing this!

I do want to be careful that we don't break pre-6.43 clients. Because not everyone updates for a variety of reasons :-)

I'm going to assume there's no way to detect a ROS with 6.43 so it may be this should implemented with a fall-back mode. Logic could be something like:

Questions I have:

DAPretorius commented 6 years ago

Hi guys,

A potential way to detect the ROS version is to use the discovery protocol. Granted that will only work if it's enabled on the interface. But it's better than nothing?

On 31/05/2018, Ben Menking notifications@github.com wrote:

@Mackiavelly thank you for implementing this!

I do want to be careful that we don't break pre-6.43 clients. Because not everyone updates for a variety of reasons :-)

I'm going to assume there's no way to detect a ROS with 6.43 so it may be this should implemented with a fall-back mode. Logic could be something like:

  • attempt pre-6.43 login
  • if error, attempt 6.43 login

Questions I have:

  • is there a way to determine a 6.43 ROS before attempting login?
  • if a pre-6.43 login request is made to a 6.43 ROS, is there a unique error return?
  • consider a flag in the PHP code that allows user to set pre-6.43 mode, both or force 6.43 mode?

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/BenMenking/routeros-api/pull/28#issuecomment-393566509

Chupaka commented 6 years ago

https://forum.mikrotik.com/viewtopic.php?p=665728#p665728

You don't have to check version.

  • Send /login with username and password in plain text
  • if response is with challenge then fall back to old login method
  • otherwise check status if login is successful
fenixter commented 6 years ago

@Chupaka I've made this in https://github.com/BenMenking/routeros-api/pull/30

BenMenking commented 6 years ago

I believe this has been resolved in #30