summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--lib/network/connection/cellular_card.pm10
2 files changed, 9 insertions, 3 deletions
diff --git a/NEWS b/NEWS
index 5f9821e..d62bee1 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,5 @@
+- cellular backend:
+ o added support for connections which do not require PIN number (#48837)
- ethernet backend:
o always writing udev rules when saving settings (#48973)
diff --git a/lib/network/connection/cellular_card.pm b/lib/network/connection/cellular_card.pm
index e2753d6..d20540c 100644
--- a/lib/network/connection/cellular_card.pm
+++ b/lib/network/connection/cellular_card.pm
@@ -107,12 +107,12 @@ sub get_networks {
sub get_hardware_settings {
my ($self) = @_;
- [ { label => N("PIN number (4 digits)"), val => \$self->{hardware}{pin}, hidden => 1 } ];
+ [ { label => N("PIN number (4 digits). Leave empty if PIN is not required."), val => \$self->{hardware}{pin}, hidden => 1 } ];
}
sub check_hardware_settings {
my ($self) = @_;
- if ($self->{hardware}{pin} !~ /^[0-9]{4}$/) {
+ if ($self->{hardware}{pin} !~ /(^$|^[0-9]{4}$)/) {
$self->{hardware}{error} = translate($wrong_pin_error);
return 0;
}
@@ -192,7 +192,11 @@ sub check_device {
sub check_hardware {
my ($self) = @_;
- to_bool(run_program::rooted($::prefix, 'comgt', '>', '/dev/null', '-d', $self->get_control_device, 'PIN'));
+ if ($self->{hardware}{pin}) {
+ to_bool(run_program::rooted($::prefix, 'comgt', '>', '/dev/null', '-d', $self->get_control_device, 'PIN'));
+ } else {
+ to_bool(run_program::rooted($::prefix, 'comgt', '>', '/dev/null', '-d', $self->get_control_device));
+ }
}
sub configure_hardware {