Hello Matthew,
here the new patch tested with success.

https://github.com/inverse-inc/packetfence/commit/b4cb7b0981ca30585a65fbb93f47da70ff1590c7.patch

Regards

Fabrice

Le 2013-06-21 06:09, matthew vassallo a écrit :
Hi Fabrice,

I have tested out the following but is still did not work. I have included the below patch but am still receiving the same error.

This is what I have done in the GUI interface:

Went on the users tab --> clicked on admin --> set both the email and sponsor to [email protected].

Then went on the configuration tab --> clicked on sources --> clicked on file 1 --> clicked on admins --> and have the following settings:

 1. username, equals, admin
 2. mark as sponsor


Don't know if I did something wrong in the configuration. Thanks for your help

------------------------------------------------------------------------
Date: Thu, 20 Jun 2013 09:55:31 -0400
From: [email protected]
To: [email protected]
Subject: Re: [PacketFence-users] Email <e-mail> is not allowed to sponsor guest access

Hi Matthew,
i think you always dream to be a beta tester for packetfence so here a patch for Sponsor with the file1 source. I order to make it work, in user tab select admin and set an email address (Sponsor mail) in file1 in the admins rule add mark as sponsor.
Then apply the following patch.
If it work, it will be in the 4.0.2 version of packetfence.

diff --git a/lib/pf/Authentication/Source/SQLSource.pm b/lib/pf/Authentication/Source/SQLSource.pm
index 63185d7..ce732d3 100644
--- a/lib/pf/Authentication/Source/SQLSource.pm
+++ b/lib/pf/Authentication/Source/SQLSource.pm
@@ -115,6 +115,19 @@ sub match {
     return undef;
 }

+=head2 username_from_email
+
+=cut
+
+sub username_from_email {
+    my ( $self, $email ) = @_;
+
+    my $logger = Log::Log4perl->get_logger('pf::authentication');
+
+    return pf::temporary_password::match_by_mail($email);
+
+}
+
 =head1 AUTHOR

 Inverse inc. <[email protected]> <mailto:[email protected]>
diff --git a/lib/pf/authentication.pm b/lib/pf/authentication.pm
index e8d9709..2d51633 100644
--- a/lib/pf/authentication.pm
+++ b/lib/pf/authentication.pm
@@ -409,7 +409,8 @@ sub username_from_email {
         my $classname = $source->meta->name;

         if ($classname eq 'pf::Authentication::Source::ADSource' ||
-            $classname eq 'pf::Authentication::Source::LDAPSource') {
+            $classname eq 'pf::Authentication::Source::LDAPSource' ||
+            $classname eq 'pf::Authentication::Source::SQLSource' ) {

             my $username = $source->username_from_email($email);

diff --git a/lib/pf/temporary_password.pm b/lib/pf/temporary_password.pm
index f92c096..8c4bdca 100644
--- a/lib/pf/temporary_password.pm
+++ b/lib/pf/temporary_password.pm
@@ -69,7 +69,7 @@ BEGIN {

     @EXPORT_OK = qw(
         view add modify
-        create
+        create match_by_mail
         validate_password
$AUTH_SUCCESS $AUTH_FAILED_INVALID $AUTH_FAILED_EXPIRED $AUTH_FAILED_NOT_YET_VALID
     );
@@ -140,6 +140,12 @@ sub temporary_password_db_prepare {
         UPDATE temporary_password SET password = ? WHERE pid = ?
     ]);

+ $temporary_password_statements->{'temporary_password_match_by_mail_sql'} = get_db_handle()->prepare(qq[
+        SELECT pid
+        FROM temporary_password
+        WHERE mail = ?
+    ]);
+
     $temporary_password_db_prepared = 1;
 }

@@ -445,6 +451,28 @@ sub reset_password {
     ) || return;
 }

+=item match_by_mail
+
+Return the username
+
+=cut
+
+sub match_by_mail {
+    my ($mail) = @_;
+    my $query = db_query_execute(
+ TEMPORARY_PASSWORD, $temporary_password_statements, 'temporary_password_match_by_mail_sql', $mail
+    ) || return;
+    my $ref = $query->fetchrow_hashref();
+
+    # just get one row and finish
+    $query->finish();
+    if (defined($ref)) {
+        return ($ref);
+    } else {
+        return undef;
+    }
+}
+

 =back


Regards
Fabrice


Le 2013-06-20 08:49, matthew vassallo a écrit :

    Hi Fabrice,

    Kindly can you explain how do I need to do that exactly please? I
    have to add a local sponsor (no AD or that). I went to sources and
    there is Htpasswd file which is pointing too admin.conf (this does
    not exist in /usrl/local/pf/conf and had to add it myself). When I
    added a rule there and marked the user as sponsor, it sill did not
    work. All other sources do not make sense. I also tried adding a
    rule in email source but still did not work.

    ------------------------------------------------------------------------
    Date: Thu, 20 Jun 2013 08:23:57 -0400
    From: [email protected] <mailto:[email protected]>
    To: [email protected]
    <mailto:[email protected]>
    Subject: Re: [PacketFence-users] Email <e-mail> is not allowed to
    sponsor guest access

    Hello Matthew,
    in source you have to set a sponsor in the rule.

    Regards
    Fabrice



    Le 2013-06-20 03:10, matthew vassallo a écrit :

        Hi,

        I am having a problem in adding a sponsor in PF. When the
        client clicks on Register via a Sponsor, he gets the following
        message - "Email <e-mail> is not allowed to sponsor guest
        access". In the previous version I had to add user.conf file
        in /usr/local/pf/conf/ path and add the required sponsor
        there. In this version such method does not work. Kindly can
        you explain what I need to do please? Thanks

        Regards,
        Matthew


        
------------------------------------------------------------------------------
        This SF.net email is sponsored by Windows:

        Build for Windows Store.

        http://p.sf.net/sfu/windows-dev2dev



        _______________________________________________
        PacketFence-users mailing list
        [email protected]  
<mailto:[email protected]>
        https://lists.sourceforge.net/lists/listinfo/packetfence-users



-- Fabrice Durand
    [email protected]  <mailto:[email protected]>  ::  +1.514.447.4918 (x135) 
::www.inverse.ca  <http://www.inverse.ca>
    Inverse inc. :: Leaders behind SOGo (http://www.sogo.nu) and PacketFence 
(http://packetfence.org)


    
------------------------------------------------------------------------------
    This SF.net email is sponsored by Windows: Build for Windows
    Store. http://p.sf.net/sfu/windows-dev2dev
    _______________________________________________ PacketFence-users
    mailing list [email protected]
    <mailto:[email protected]>
    https://lists.sourceforge.net/lists/listinfo/packetfence-users


    
------------------------------------------------------------------------------
    This SF.net email is sponsored by Windows:

    Build for Windows Store.

    http://p.sf.net/sfu/windows-dev2dev



    _______________________________________________
    PacketFence-users mailing list
    [email protected]  
<mailto:[email protected]>
    https://lists.sourceforge.net/lists/listinfo/packetfence-users



--
Fabrice Durand
[email protected]  <mailto:[email protected]>  ::  +1.514.447.4918 (x135) 
::www.inverse.ca  <http://www.inverse.ca>
Inverse inc. :: Leaders behind SOGo (http://www.sogo.nu) and PacketFence 
(http://packetfence.org)

------------------------------------------------------------------------------ This SF.net email is sponsored by Windows: Build for Windows Store. http://p.sf.net/sfu/windows-dev2dev _______________________________________________ PacketFence-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/packetfence-users


------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev


_______________________________________________
PacketFence-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/packetfence-users


--
Fabrice Durand
[email protected] ::  +1.514.447.4918 (x135) ::  www.inverse.ca
Inverse inc. :: Leaders behind SOGo (http://www.sogo.nu) and PacketFence 
(http://packetfence.org)

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
PacketFence-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/packetfence-users

Reply via email to