﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
20740	GenericIPAddressField does not pass protocol to formfield()	Jeffrey Knockel	nobody	"If we have a model containing a GenericIPAddressField specifying a protocol...
{{{
class MyModel(models.Model):
    host = models.GenericIPAddressField(protocol='IPv4')
    . . .
}}}

And a ModelForm wrapping it...
{{{
class MyForm(forms.ModelForm):
    class Meta:
        model = models.MyModel
    . . .
}}}

Then that form can give a misleading error message after validation.  For instance, with the example above, if you input, e.g., ""bletch"", you get the error message ""Enter a valid IPv4 or IPv6 address"", even though IPv6 addresses are not allowed.  (However, if you input, e.g., ""::1"", you get the accurate message ""Enter a valid IPv4 address"".)

It seems like GenericIPAddressField doesn't pass its protocol in its formfield() method, so the GenericIPAddressField form field first uses a more general validation rule than the GenericIPAddressField model field.  I'm attaching a patch which fixes this issue in my application."	Bug	closed	Forms	dev	Normal	fixed		timograham@…	Accepted	1	0	1	0	1	0
