opnsense / core

OPNsense GUI, API and systems backend
https://opnsense.org/
BSD 2-Clause "Simplified" License
3.31k stars 738 forks source link

Orange France are playing silly bu***** again. #2774

Closed marjohn56 closed 4 years ago

marjohn56 commented 6 years ago

Seems Orange France are messing with the authentication and it dynamically changes. There is a solution as a fix for wrt and others has been posted. What it means though is that we would have to add a checkbox for Orange France users to fire off the calculation on their password. If we do this, then where should we add this checkbox?

What it means is that the user would just enter their username/password string, no messing with adding a load of hex chars - then opnsense would create the login credentials and put them in the dhclient and dhcp6c configurations automagically. Not complex, just a question of where to put the GUI stuff.

@fichtner - your instructions on this?

Franck78 commented 5 years ago

nothing to do with the bug but wrong anyway

in common.c line ~1979

case: DHCPOPT_RAW have nothing to do here. It is not a DH6OPTxxx protocol command !

marjohn56 commented 5 years ago

It's used for parsing RAW options.

Franck78 commented 5 years ago

It's used for parsing RAW options.

this thing here will never be called because DHCPOPT_RAW is an ENUM (=~42) found in config.h and this switch is about commands found in dhcp6.h

Just reorder the enum (like i did), I wanted to validate some prinft values. Make DHCPOPT_RAW the third enum item, and try to recompile.

marjohn56 commented 5 years ago

Play with it as much as you like Frank, if you can find the problem all well and good.

Franck78 commented 5 years ago

Mar/06/2019 20:19:21: add_pd_pif: /var/etc/dhcp6c_opt1.conf:976303674 See this line number ? Hex representation is 3A 31 36 3A Ascii : :16: or :61: Guess what, there is that substring in the config file.

And it overwrites what was read stored by the parser. Something is wrong between bison/flex and the c (config.c/cfparse.y) gluing all that.

If I swap the config line inside the cfgfile, I get the same 'overwrite' for another list of cfl Mar/06/2019 20:39:00: configure_ia: /var/etc/dhcp6c_opt1.conf:976303674 invalid configuration

Who did the /XXX/ mods ?

marjohn56 commented 5 years ago

I did the 'pull together' back in the days when we were running pfsense in late 2016. I remember some the sources came from someone on the Orange FR forum However the changes to the cfparse.y and cftoken.l files were carried out by the wife of a friend of Kev who understood yacc. It was done to help Orannge FR users who could not get IPv6. It was an absolute pain in the a** and I don;t wish to go down that path again.

marjohn56 commented 5 years ago

It should be noted that this issue has come about due to the change made when a SIGHUP caused a reload of the config. Prior to that the config was only ever read once. That being the case then perhaps the best way forward is to revert that change. What would then need to be done would be changes to the interfaces.inc to kill and re-start dhcp6c - but that then creates a whole new set of problems,

marjohn56 commented 5 years ago

Maybe we should take a look at dibbler. I did get it working under pfSense way back when. It supports a while load of things dhcp6c doesn't such as ds-lite etc.

It think I'll make it my summer project for 20.1! :)

Franck78 commented 5 years ago

Fixed for me ;) Pull request ready.

marjohn56 commented 5 years ago

Very well done. I'm just heading out of the door on my way to Thailand for a holiday, will look when I get back..

Franck78 commented 5 years ago

I have deleted some of my long 'posts' with useless listings of logs.

My version of dhcp6c is working well. No more coredumps.

AdSchellevis commented 4 years ago

This issue has been automatically timed-out (after 180 days of inactivity).

For more information about the policies for this repository, please read https://github.com/opnsense/core/blob/master/CONTRIBUTING.md for further details.

If someone wants to step up and work on this issue, just let us know, so we can reopen the issue and assign an owner to it.