Merge branch 'master' of github.com:ZoneMinder/zoneminder
commit
50095b3147
|
@ -0,0 +1,18 @@
|
||||||
|
# Security Policy
|
||||||
|
|
||||||
|
## Supported Versions
|
||||||
|
|
||||||
|
Time and computers move on. We do not have the resources to support every ancient version of everything
|
||||||
|
(unless you'd like to pay us to do so.) We ONLY support the latest stable release and development releases.
|
||||||
|
|
||||||
|
| Version | Supported |
|
||||||
|
| ------- | ------------------ |
|
||||||
|
| 1.34.x | :white_check_mark: |
|
||||||
|
| 1.35.x | :white_check_mark: |
|
||||||
|
| < 1.34.x | :x: |
|
||||||
|
|
||||||
|
## Reporting a Vulnerability
|
||||||
|
|
||||||
|
Since sometimes security vulnerabilities can be sensitive, you can just email me at isaac@zoneminder.com.
|
||||||
|
If it's not such a big deal, by all means, create an issue here on github
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
SELECT 'ALTERING Frames.Id to a BIGINT. This could take a long time.';
|
||||||
|
ALTER TABLE Frames MODIFY Id BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT;
|
|
@ -28,7 +28,7 @@
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
|
|
||||||
Name: zoneminder
|
Name: zoneminder
|
||||||
Version: 1.35.2
|
Version: 1.35.3
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A camera monitoring and analysis tool
|
Summary: A camera monitoring and analysis tool
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
|
|
|
@ -279,13 +279,11 @@ sub profiles {
|
||||||
if ( $verbose ) {
|
if ( $verbose ) {
|
||||||
print "Received message:\n" . $result . "\n";
|
print "Received message:\n" . $result . "\n";
|
||||||
}
|
}
|
||||||
|
my @profiles;
|
||||||
|
|
||||||
my $profiles = $result->get_Profiles();
|
|
||||||
|
|
||||||
foreach my $profile ( @{ $profiles } ) {
|
foreach my $profile ( @{ $result->get_Profiles() } ) {
|
||||||
|
|
||||||
my $token = $profile->attr()->get_token() ;
|
|
||||||
my $Name = $profile->get_Name();
|
|
||||||
|
|
||||||
my $VideoEncoderConfiguration = $profile->get_VideoEncoderConfiguration();
|
my $VideoEncoderConfiguration = $profile->get_VideoEncoderConfiguration();
|
||||||
if ( ! $VideoEncoderConfiguration ) {
|
if ( ! $VideoEncoderConfiguration ) {
|
||||||
|
@ -293,6 +291,9 @@ sub profiles {
|
||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
my $token = $profile->attr()->get_token() ;
|
||||||
|
my $Name = $profile->get_Name();
|
||||||
|
|
||||||
# Specification gives conflicting values for unicast stream types, try both.
|
# Specification gives conflicting values for unicast stream types, try both.
|
||||||
# http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl#op.GetStreamUri
|
# http://www.onvif.org/onvif/ver10/media/wsdl/media.wsdl#op.GetStreamUri
|
||||||
foreach my $streamtype ( 'RTP_unicast', 'RTP-Unicast', 'RTP-multicast', 'RTP-Multicast' ) {
|
foreach my $streamtype ( 'RTP_unicast', 'RTP-Unicast', 'RTP-multicast', 'RTP-Multicast' ) {
|
||||||
|
@ -310,12 +311,16 @@ sub profiles {
|
||||||
next if ! $MediaUri;
|
next if ! $MediaUri;
|
||||||
my $Uri = $MediaUri->get_Uri();
|
my $Uri = $MediaUri->get_Uri();
|
||||||
next if ! $Uri;
|
next if ! $Uri;
|
||||||
|
my $Resolution = $VideoEncoderConfiguration->get_Resolution();
|
||||||
|
my $Width = $Resolution ? $Resolution->get_Width() : 0;
|
||||||
|
my $Height = $Resolution ? $Resolution->get_Height() : 0;
|
||||||
|
|
||||||
|
push @profiles, {
|
||||||
print join(', ', $token,
|
print join(', ', $token,
|
||||||
$Name,
|
$Name,
|
||||||
$VideoEncoderConfiguration->get_Encoding(),
|
$VideoEncoderConfiguration->get_Encoding(),
|
||||||
$VideoEncoderConfiguration->get_Resolution()->get_Width(),
|
$Width,
|
||||||
$VideoEncoderConfiguration->get_Resolution()->get_Height(),
|
$Height,
|
||||||
$VideoEncoderConfiguration->get_RateControl()->get_FrameRateLimit(),
|
$VideoEncoderConfiguration->get_RateControl()->get_FrameRateLimit(),
|
||||||
$Uri,
|
$Uri,
|
||||||
) . "\n";
|
) . "\n";
|
||||||
|
|
|
@ -170,5 +170,23 @@ class GroupsController extends AppController {
|
||||||
array('action' => 'index')
|
array('action' => 'index')
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
} // end function delete
|
} // end function delete
|
||||||
|
|
||||||
|
// returns monitor associations
|
||||||
|
public function associations() {
|
||||||
|
$this->Group->recursive = -1;
|
||||||
|
$groups = $this->Group->find('all', array(
|
||||||
|
'contain'=> array(
|
||||||
|
'Monitor' => array(
|
||||||
|
'fields'=>array('Id','Name')
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
$this->set(array(
|
||||||
|
'groups' => $groups,
|
||||||
|
'_serialize' => array('groups')
|
||||||
|
));
|
||||||
|
} // end associations
|
||||||
|
|
||||||
} // end class GroupController
|
} // end class GroupController
|
||||||
|
|
|
@ -215,7 +215,7 @@ class Logger {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return( $this->id );
|
return $this->id;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function level( $level ) {
|
public function level( $level ) {
|
||||||
|
|
Loading…
Reference in New Issue