On Fri, Dec 2, 2011 at 4:36 AM, harveyzh
<reply+i-2425913-a30f42d840f54cb26b206edd25ffbc4a6b62a94a-26403(a)reply.github.com>
wrote:
After modifying and saving the networking options of a system in
cobbler web interface, i found that the modification was lost.
I am using the cobbler-2.3.1-1 and cobbler-web-2.3.1-1 on centos 6.0, which are built
from the git master (the latest commit is 525122d267c3a0ec3a353d52458be9d1612b3388 ). But
in cobbler-2.2.2-1, it works fine.
How to reproduce
-----
1. add a new interface
2. click the "Generate Random MAC" button
3. fill the IP Address
4. check the "static" option checked
5. fill the Subnet Mask and Virt Bridge
6. finanlly save
After lots of git bisects...
18eb1c06779b37d89dfb2962a08236dd1bab24a6 is the first bad commit
commit 18eb1c06779b37d89dfb2962a08236dd1bab24a6
Author: James Cammarata <jimi(a)sngx.net>
Date: Fri Nov 4 02:33:38 2011 -0500
Additional CSRF work. All URLs that modify state are now required
to be POSTs only.
:040000 040000 1398d8f5fe4818f34cdce702b073eb974f368065
47770201913af8bb2a0a97f03fecdc4f4449504e M web
So something about saving interfaces doesn't like CSRF apparently.
Which is odd, because saving any other attribute on the system works
just fine - it's just the interface stuff that doesn't save correctly.