Leosac  0.8.0
Open Source Access Control
PushSimpleCardNumber.cpp
Go to the documentation of this file.
1 /*
2  Copyright (C) 2014-2016 Leosac
3 
4  This file is part of Leosac.
5 
6  Leosac is free software: you can redistribute it and/or modify
7  it under the terms of the GNU Affero General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  Leosac is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU Affero General Public License for more details.
15 
16  You should have received a copy of the GNU Affero General Public License
17  along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #include "PushSimpleCardNumber.hpp"
22 
23 // fixme zmqpp include problem
24 #include <cstring>
25 
26 #include <zmqpp/inet.hpp>
27 #include <zmqpp/zmqpp.hpp>
28 
30  const Cred::RFIDCard &card)
31 {
32  ByteVector data(8);
33  uint64_t network_card_id = zmqpp::htonll(card.to_int());
34  std::memcpy(&data[0], &network_card_id, 8);
35 
36  return data;
37 }
RFIDCard.hpp
Leosac::Cred::RFIDCard
An RFID card credential.
Definition: RFIDCard.hpp:33
Leosac::Module::TCPNotifier::PushSimpleCardNumber::build_cred_msg
virtual ByteVector build_cred_msg(const Cred::RFIDCard &card) override
Returns a binary buffer containing the data that shall be sent over the network to notify the client.
Definition: PushSimpleCardNumber.cpp:29
Leosac::ByteVector
std::vector< uint8_t > ByteVector
Definition: LeosacFwd.hpp:37
Leosac::Cred::RFIDCard::to_int
virtual uint64_t to_int() const override
Returns the integer representation of the card ID.
Definition: RFIDCard.cpp:58
PushSimpleCardNumber.hpp