mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2026-06-28 22:39:37 +02:00
formatting
This commit is contained in:
@@ -39,7 +39,7 @@ class qDefs : public QWidget {
|
||||
/**
|
||||
* Empty Constructor
|
||||
*/
|
||||
qDefs() {};
|
||||
qDefs(){};
|
||||
|
||||
static QFont GetDefaultFont() {
|
||||
return QFont("Cantarell", 10, QFont::Normal);
|
||||
|
||||
@@ -7,9 +7,11 @@
|
||||
#define MIN_REQRD_VRSN_T_RD_API 0x181130
|
||||
#define REQRD_FRMWR_VRSN 0x260504
|
||||
|
||||
#define NUM_HARDWARE_VERSIONS (1)
|
||||
#define HARDWARE_VERSION_NUMBERS {0x3f}
|
||||
#define HARDWARE_VERSION_NAMES {"5.1"}
|
||||
#define NUM_HARDWARE_VERSIONS (1)
|
||||
#define HARDWARE_VERSION_NUMBERS \
|
||||
{ 0x3f }
|
||||
#define HARDWARE_VERSION_NAMES \
|
||||
{ "5.1" }
|
||||
|
||||
#define LINKED_SERVER_NAME "ctbDetectorServer"
|
||||
|
||||
|
||||
@@ -636,8 +636,8 @@ int Feb_Control_SetTrimbits(unsigned int *trimbits, int top) {
|
||||
<< ((7 - i) * 4); // upper
|
||||
}
|
||||
} // end column loop i
|
||||
} // end supercolumn loop sc
|
||||
} // end row loop
|
||||
} // end supercolumn loop sc
|
||||
} // end row loop
|
||||
|
||||
if (Feb_Control_activated) {
|
||||
if (!Feb_Interface_WriteMemoryInLoops(Feb_Control_leftAddress,
|
||||
@@ -654,7 +654,7 @@ int Feb_Control_SetTrimbits(unsigned int *trimbits, int top) {
|
||||
}
|
||||
|
||||
} // end row_set loop (groups of 16 rows)
|
||||
} // end l_r loop
|
||||
} // end l_r loop
|
||||
|
||||
memcpy(Feb_Control_last_downloaded_trimbits, trimbits,
|
||||
Feb_Control_trimbit_size * sizeof(unsigned int));
|
||||
|
||||
@@ -7,7 +7,8 @@
|
||||
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS {0x0, 0x1};
|
||||
#define HARDWARE_VERSION_NAMES {"FX70T", "FX30T"}
|
||||
#define HARDWARE_VERSION_NAMES \
|
||||
{ "FX70T", "FX30T" }
|
||||
|
||||
#define REQUIRED_FIRMWARE_VERSION (32)
|
||||
// virtual ones renamed for consistency
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS {0x0, 0x2};
|
||||
#define HARDWARE_VERSION_NAMES {"1.0", "1.2"}
|
||||
#define HARDWARE_VERSION_NAMES \
|
||||
{ "1.0", "1.2" }
|
||||
|
||||
#define LINKED_SERVER_NAME "gotthard2DetectorServer"
|
||||
|
||||
|
||||
@@ -8,9 +8,11 @@
|
||||
#define REQRD_FRMWRE_VRSN_BOARD2 0x250209 // 1.0 pcb (version = 010)
|
||||
#define REQRD_FRMWRE_VRSN 0x250208 // 2.0 pcb (version = 011)
|
||||
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS {0x2, 0x3}
|
||||
#define HARDWARE_VERSION_NAMES {"1.0", "2.0"}
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS \
|
||||
{ 0x2, 0x3 }
|
||||
#define HARDWARE_VERSION_NAMES \
|
||||
{ "1.0", "2.0" }
|
||||
|
||||
#define ID_FILE "detid_jungfrau.txt"
|
||||
#define LINKED_SERVER_NAME "jungfrauDetectorServer"
|
||||
@@ -212,11 +214,13 @@ enum DACINDEX {
|
||||
enum MASTERINDEX { MASTER_HARDWARE, OW_MASTER, OW_SLAVE };
|
||||
#define MASTER_NAMES "hardware", "master", "slave"
|
||||
|
||||
#define NUMSETTINGS (2)
|
||||
#define NSPECIALDACS (3)
|
||||
#define SPECIALDACINDEX {J_VREF_PRECH, J_VREF_DS, J_VREF_COMP};
|
||||
#define SPECIAL_DEFAULT_DYNAMIC_GAIN_VALS {1450, 480, 420}
|
||||
#define SPECIAL_DEFAULT_DYNAMICHG0_GAIN_VALS {1550, 450, 620}
|
||||
#define NUMSETTINGS (2)
|
||||
#define NSPECIALDACS (3)
|
||||
#define SPECIALDACINDEX {J_VREF_PRECH, J_VREF_DS, J_VREF_COMP};
|
||||
#define SPECIAL_DEFAULT_DYNAMIC_GAIN_VALS \
|
||||
{ 1450, 480, 420 }
|
||||
#define SPECIAL_DEFAULT_DYNAMICHG0_GAIN_VALS \
|
||||
{ 1550, 450, 620 }
|
||||
|
||||
enum NETWORKINDEX { TXN_FRAME, FLOWCTRL_10G };
|
||||
enum CLKINDEX { RUN_CLK, ADC_CLK, DBIT_CLK, NUM_CLOCKS };
|
||||
|
||||
@@ -7,9 +7,11 @@
|
||||
#define REQRD_FRMWRE_VRSN_BOARD2 0x444445 // 1.0 pcb (version = 010)
|
||||
#define REQRD_FRMWRE_VRSN 0x231026 // 2.0 pcb (version = 011)
|
||||
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS {0x2, 0x3}
|
||||
#define HARDWARE_VERSION_NAMES {"1.0", "2.0"}
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS \
|
||||
{ 0x2, 0x3 }
|
||||
#define HARDWARE_VERSION_NAMES \
|
||||
{ "1.0", "2.0" }
|
||||
|
||||
#define ID_FILE ("detid_moench.txt")
|
||||
#define LINKED_SERVER_NAME "moenchDetectorServer"
|
||||
|
||||
@@ -9,7 +9,8 @@
|
||||
|
||||
#define NUM_HARDWARE_VERSIONS (2)
|
||||
#define HARDWARE_VERSION_NUMBERS {0x0, 0x2};
|
||||
#define HARDWARE_VERSION_NAMES {"1.0", "1.2"}
|
||||
#define HARDWARE_VERSION_NAMES \
|
||||
{ "1.0", "1.2" }
|
||||
|
||||
#define LINKED_SERVER_NAME "mythen3DetectorServer"
|
||||
|
||||
@@ -130,12 +131,15 @@ enum DACINDEX {
|
||||
|
||||
enum ADCINDEX { TEMP_FPGA };
|
||||
|
||||
#define NUMSETTINGS (3)
|
||||
#define NSPECIALDACS (2)
|
||||
#define SPECIALDACINDEX {M_VRPREAMP, M_VRSHAPER};
|
||||
#define SPECIAL_DEFAULT_STANDARD_DAC_VALS {1100, 1280}
|
||||
#define SPECIAL_DEFAULT_FAST_DAC_VALS {300, 1500}
|
||||
#define SPECIAL_DEFAULT_HIGHGAIN_DAC_VALS {1300, 1100}
|
||||
#define NUMSETTINGS (3)
|
||||
#define NSPECIALDACS (2)
|
||||
#define SPECIALDACINDEX {M_VRPREAMP, M_VRSHAPER};
|
||||
#define SPECIAL_DEFAULT_STANDARD_DAC_VALS \
|
||||
{ 1100, 1280 }
|
||||
#define SPECIAL_DEFAULT_FAST_DAC_VALS \
|
||||
{ 300, 1500 }
|
||||
#define SPECIAL_DEFAULT_HIGHGAIN_DAC_VALS \
|
||||
{ 1300, 1100 }
|
||||
|
||||
enum CLKINDEX { SYSTEM_C0, SYSTEM_C1, SYSTEM_C2, NUM_CLOCKS };
|
||||
#define NUM_CLOCKS_TO_SET (1)
|
||||
|
||||
@@ -2382,7 +2382,7 @@ int get_exptime(int file_des) {
|
||||
if (receiveData(file_des, &gateIndex, sizeof(gateIndex), INT32) < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// get only
|
||||
// get only
|
||||
#ifdef MYTHEN3D
|
||||
if (gateIndex < 0 || gateIndex > 2) {
|
||||
ret = FAIL;
|
||||
@@ -7018,7 +7018,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// bursts
|
||||
// bursts
|
||||
#ifdef GOTTHARD2D
|
||||
i64 = getNumBursts();
|
||||
#else
|
||||
@@ -7028,7 +7028,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// additional storage cells
|
||||
// additional storage cells
|
||||
#if defined(JUNGFRAUD)
|
||||
i32 = getNumAdditionalStorageCells();
|
||||
#else
|
||||
@@ -7038,7 +7038,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// analog samples
|
||||
// analog samples
|
||||
#if defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
i32 = getNumAnalogSamples();
|
||||
#else
|
||||
@@ -7048,7 +7048,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// digital samples
|
||||
// digital samples
|
||||
#if defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
i32 = getNumDigitalSamples();
|
||||
#else
|
||||
@@ -7058,7 +7058,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// exptime
|
||||
// exptime
|
||||
#ifdef MYTHEN3D
|
||||
i64 = 0;
|
||||
#elif defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
@@ -7087,7 +7087,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// sub exptime
|
||||
// sub exptime
|
||||
#ifdef EIGERD
|
||||
i64 = getSubExpTime();
|
||||
#else
|
||||
@@ -7097,7 +7097,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// sub deadtime
|
||||
// sub deadtime
|
||||
#ifdef EIGERD
|
||||
i64 = getSubDeadTime();
|
||||
#else
|
||||
@@ -7107,7 +7107,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// activate
|
||||
// activate
|
||||
#ifdef EIGERD
|
||||
i32 = 0;
|
||||
getActivate(&i32);
|
||||
@@ -7118,7 +7118,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// data stream left
|
||||
// data stream left
|
||||
#ifdef EIGERD
|
||||
i32 = 0;
|
||||
getDataStream(LEFT, &i32);
|
||||
@@ -7129,7 +7129,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// data stream right
|
||||
// data stream right
|
||||
#ifdef EIGERD
|
||||
i32 = 0;
|
||||
getDataStream(RIGHT, &i32);
|
||||
@@ -7140,7 +7140,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// quad
|
||||
// quad
|
||||
#ifdef EIGERD
|
||||
i32 = getQuad();
|
||||
#else
|
||||
@@ -7150,7 +7150,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// ReadNRows
|
||||
// ReadNRows
|
||||
#if defined(EIGERD) || defined(JUNGFRAUD) || defined(MOENCHD)
|
||||
i32 = getReadNRows();
|
||||
#else
|
||||
@@ -7191,7 +7191,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// 10 gbe
|
||||
// 10 gbe
|
||||
#if defined(EIGERD) || defined(CHIPTESTBOARDD) || defined(MYTHEN3D)
|
||||
i32 = enableTenGigabitEthernet(GET_FLAG);
|
||||
#else
|
||||
@@ -7201,7 +7201,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// readout mode
|
||||
// readout mode
|
||||
#if defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
i32 = getReadoutMode();
|
||||
#else
|
||||
@@ -7211,7 +7211,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// adc mask
|
||||
// adc mask
|
||||
#if defined(CHIPTESTBOARDD)
|
||||
u32 = getADCEnableMask();
|
||||
#else
|
||||
@@ -7221,7 +7221,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// 10g adc mask
|
||||
// 10g adc mask
|
||||
#if defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
u32 = getADCEnableMask_10G();
|
||||
#else
|
||||
@@ -7231,7 +7231,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// counter mask
|
||||
// counter mask
|
||||
#ifdef MYTHEN3D
|
||||
u32 = getCounterMask();
|
||||
#else
|
||||
@@ -7241,7 +7241,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// burst mode
|
||||
// burst mode
|
||||
#ifdef GOTTHARD2D
|
||||
i32 = (int)getBurstMode();
|
||||
#else
|
||||
@@ -7251,7 +7251,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// exptime1
|
||||
// exptime1
|
||||
#ifdef MYTHEN3D
|
||||
i64 = getExpTime(0);
|
||||
#else
|
||||
@@ -7261,7 +7261,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// exptime2
|
||||
// exptime2
|
||||
#ifdef MYTHEN3D
|
||||
i64 = getExpTime(1);
|
||||
#else
|
||||
@@ -7271,7 +7271,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// exptime3
|
||||
// exptime3
|
||||
#ifdef MYTHEN3D
|
||||
i64 = getExpTime(2);
|
||||
#else
|
||||
@@ -7281,7 +7281,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// gatedelay1
|
||||
// gatedelay1
|
||||
#ifdef MYTHEN3D
|
||||
i64 = getGateDelay(0);
|
||||
#else
|
||||
@@ -7291,7 +7291,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// gatedelay2
|
||||
// gatedelay2
|
||||
#ifdef MYTHEN3D
|
||||
i64 = getGateDelay(1);
|
||||
#else
|
||||
@@ -7301,7 +7301,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// gatedelay3
|
||||
// gatedelay3
|
||||
#ifdef MYTHEN3D
|
||||
i64 = getGateDelay(2);
|
||||
#else
|
||||
@@ -7311,7 +7311,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// gates
|
||||
// gates
|
||||
#ifdef MYTHEN3D
|
||||
i32 = getNumGates();
|
||||
#else
|
||||
@@ -7341,7 +7341,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// transceiver samples
|
||||
// transceiver samples
|
||||
#if defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
i32 = getNumTransceiverSamples();
|
||||
#else
|
||||
@@ -7351,7 +7351,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// transceiver mask
|
||||
// transceiver mask
|
||||
#if defined(CHIPTESTBOARDD) || defined(XILINX_CHIPTESTBOARDD)
|
||||
u32 = getTransceiverEnableMask();
|
||||
#else
|
||||
@@ -7361,7 +7361,7 @@ int get_receiver_parameters(int file_des) {
|
||||
if (n < 0)
|
||||
return printSocketReadError();
|
||||
|
||||
// readout speed
|
||||
// readout speed
|
||||
#if !defined(CHIPTESTBOARDD) && !defined(XILINX_CHIPTESTBOARDD)
|
||||
ret = getReadoutSpeed(&i32);
|
||||
if (ret == FAIL) {
|
||||
|
||||
@@ -32,7 +32,7 @@ template <class T, class Allocator = std::allocator<T>> class Result {
|
||||
|
||||
public:
|
||||
Result() = default;
|
||||
Result(std::initializer_list<T> list) : vec(list) {};
|
||||
Result(std::initializer_list<T> list) : vec(list){};
|
||||
|
||||
/** Custom constructor from integer type to Result<ns> or Result<bool> */
|
||||
template <typename V, typename = typename std::enable_if<
|
||||
|
||||
@@ -17,12 +17,12 @@ class detectorData {
|
||||
: progressIndex(progressIndex), fileName(fileName),
|
||||
fileIndex(fileIndex), nx(nx), ny(ny), data(data),
|
||||
databytes(databytes), dynamicRange(dynamicRange),
|
||||
completeImage(completeImage) {};
|
||||
completeImage(completeImage){};
|
||||
|
||||
/**
|
||||
* data has to be deleted by caller
|
||||
*/
|
||||
~detectorData() {};
|
||||
~detectorData(){};
|
||||
|
||||
int64_t getChannel(int i) {
|
||||
int off = dynamicRange / 8;
|
||||
|
||||
@@ -173,7 +173,7 @@ class DataProcessor : private virtual slsDetectorDefs, public ThreadObject {
|
||||
uint32_t streamingTimerInMs;
|
||||
uint32_t streamingStartFnum;
|
||||
uint32_t currentFreqCount{0};
|
||||
struct timespec timerbegin{};
|
||||
struct timespec timerbegin {};
|
||||
bool framePadding;
|
||||
std::atomic<bool> startedFlag{false};
|
||||
std::atomic<uint64_t> firstIndex{0};
|
||||
|
||||
@@ -17,8 +17,8 @@ namespace sls {
|
||||
class File : private virtual slsDetectorDefs {
|
||||
|
||||
public:
|
||||
File() {};
|
||||
virtual ~File() {};
|
||||
File(){};
|
||||
virtual ~File(){};
|
||||
|
||||
virtual fileFormat GetFileFormat() const = 0;
|
||||
virtual void CloseFile() = 0;
|
||||
|
||||
@@ -193,8 +193,8 @@ class GeneralData {
|
||||
slsDetectorDefs::NO_DISCARD};
|
||||
/* actual image size after ctboffset and ctbreorder */
|
||||
uint32_t actualImageSize{0};
|
||||
GeneralData() {};
|
||||
virtual ~GeneralData() {};
|
||||
GeneralData(){};
|
||||
virtual ~GeneralData(){};
|
||||
|
||||
// Returns the pixel depth in byte, 4 bits being 0.5 byte
|
||||
float GetPixelDepth() { return float(dynamicRange) / 8; }
|
||||
|
||||
@@ -47,8 +47,8 @@ class GeneralDataTest : public GeneralData {
|
||||
// dummy DataProcessor class for testing
|
||||
class DataProcessorTest : public DataProcessor {
|
||||
public:
|
||||
DataProcessorTest() : DataProcessor(0) {};
|
||||
~DataProcessorTest() {};
|
||||
DataProcessorTest() : DataProcessor(0){};
|
||||
~DataProcessorTest(){};
|
||||
void ArrangeDbitData(size_t &size, char *data) {
|
||||
DataProcessor::ArrangeDbitData(size, data);
|
||||
}
|
||||
|
||||
@@ -21,29 +21,29 @@ class ClientSocket : public DataSocket {
|
||||
|
||||
private:
|
||||
void readReply(int &ret, void *retval, size_t retval_size);
|
||||
struct sockaddr_in serverAddr{};
|
||||
struct sockaddr_in serverAddr {};
|
||||
std::string socketType;
|
||||
};
|
||||
|
||||
class ReceiverSocket : public ClientSocket {
|
||||
public:
|
||||
ReceiverSocket(const std::string &hostname, uint16_t port_number)
|
||||
: ClientSocket("Receiver", hostname, port_number) {};
|
||||
ReceiverSocket(struct sockaddr_in addr) : ClientSocket("Receiver", addr) {};
|
||||
: ClientSocket("Receiver", hostname, port_number){};
|
||||
ReceiverSocket(struct sockaddr_in addr) : ClientSocket("Receiver", addr){};
|
||||
};
|
||||
|
||||
class DetectorSocket : public ClientSocket {
|
||||
public:
|
||||
DetectorSocket(const std::string &hostname, uint16_t port_number)
|
||||
: ClientSocket("Detector", hostname, port_number) {};
|
||||
DetectorSocket(struct sockaddr_in addr) : ClientSocket("Detector", addr) {};
|
||||
: ClientSocket("Detector", hostname, port_number){};
|
||||
DetectorSocket(struct sockaddr_in addr) : ClientSocket("Detector", addr){};
|
||||
};
|
||||
|
||||
class GuiSocket : public ClientSocket {
|
||||
public:
|
||||
GuiSocket(const std::string &hostname, uint16_t port_number)
|
||||
: ClientSocket("Gui", hostname, port_number) {};
|
||||
GuiSocket(struct sockaddr_in addr) : ClientSocket("Gui", addr) {};
|
||||
: ClientSocket("Gui", hostname, port_number){};
|
||||
GuiSocket(struct sockaddr_in addr) : ClientSocket("Gui", addr){};
|
||||
};
|
||||
|
||||
}; // namespace sls
|
||||
|
||||
@@ -33,5 +33,5 @@ class Timer {
|
||||
std::string name_;
|
||||
};
|
||||
|
||||
}; // namespace sls
|
||||
}; // namespace sls
|
||||
#endif // TIMER_H
|
||||
|
||||
@@ -42,7 +42,7 @@ class Logger {
|
||||
|
||||
public:
|
||||
Logger() = default;
|
||||
explicit Logger(TLogLevel level) : level(level) {};
|
||||
explicit Logger(TLogLevel level) : level(level){};
|
||||
~Logger() {
|
||||
// output in the destructor to allow for << syntax
|
||||
os << RESET << '\n';
|
||||
|
||||
@@ -137,7 +137,7 @@ class slsDetectorDefs {
|
||||
int x{0};
|
||||
int y{0};
|
||||
xy() = default;
|
||||
xy(int x, int y) : x(x), y(y) {};
|
||||
xy(int x, int y) : x(x), y(y){};
|
||||
constexpr bool operator==(const xy &other) const {
|
||||
return ((x == other.x) && (y == other.y));
|
||||
}
|
||||
@@ -223,7 +223,7 @@ class slsDetectorDefs {
|
||||
|
||||
struct Hz {
|
||||
int value{0};
|
||||
explicit Hz(int v) : value(v) {};
|
||||
explicit Hz(int v) : value(v){};
|
||||
constexpr bool operator==(const Hz &other) const {
|
||||
return (value == other.value);
|
||||
}
|
||||
@@ -252,9 +252,9 @@ class slsDetectorDefs {
|
||||
int ymin{-1};
|
||||
int ymax{-1};
|
||||
ROI() = default;
|
||||
ROI(int xmin, int xmax) : xmin(xmin), xmax(xmax) {};
|
||||
ROI(int xmin, int xmax) : xmin(xmin), xmax(xmax){};
|
||||
ROI(int xmin, int xmax, int ymin, int ymax)
|
||||
: xmin(xmin), xmax(xmax), ymin(ymin), ymax(ymax) {};
|
||||
: xmin(xmin), xmax(xmax), ymin(ymin), ymax(ymax){};
|
||||
constexpr int width() const { return (xmax - xmin + 1); }
|
||||
constexpr int height() const { return (ymax - ymin + 1); }
|
||||
constexpr std::array<int, 4> getIntArray() const {
|
||||
|
||||
@@ -18,7 +18,7 @@ namespace sls {
|
||||
UdpRxSocket::UdpRxSocket(uint16_t port, ssize_t packet_size,
|
||||
const char *hostname, int kernel_buffer_size)
|
||||
: packet_size_(packet_size) {
|
||||
struct addrinfo hints{};
|
||||
struct addrinfo hints {};
|
||||
hints.ai_family = AF_UNSPEC;
|
||||
hints.ai_socktype = SOCK_DGRAM;
|
||||
hints.ai_flags = AI_PASSIVE | AI_ADDRCONFIG;
|
||||
|
||||
@@ -531,7 +531,7 @@ void ZmqSocket::PrintError() {
|
||||
|
||||
// Nested class to do RAII handling of socket descriptors
|
||||
ZmqSocket::mySocketDescriptors::mySocketDescriptors(bool server)
|
||||
: server(server), contextDescriptor(nullptr), socketDescriptor(nullptr) {};
|
||||
: server(server), contextDescriptor(nullptr), socketDescriptor(nullptr){};
|
||||
ZmqSocket::mySocketDescriptors::~mySocketDescriptors() {
|
||||
Disconnect();
|
||||
Close();
|
||||
|
||||
+206
-206
@@ -71,244 +71,244 @@ namespace sls {
|
||||
a += b; \
|
||||
};
|
||||
|
||||
/*
|
||||
* Implemented from RFC1321 The MD5 Message-Digest Algorithm
|
||||
*/
|
||||
/*
|
||||
* Implemented from RFC1321 The MD5 Message-Digest Algorithm
|
||||
*/
|
||||
|
||||
#define INIT_DATA_A (unsigned long)0x67452301L
|
||||
#define INIT_DATA_B (unsigned long)0xefcdab89L
|
||||
#define INIT_DATA_C (unsigned long)0x98badcfeL
|
||||
#define INIT_DATA_D (unsigned long)0x10325476L
|
||||
|
||||
int MD5_Init_SLS(MD5_CTX * c) {
|
||||
memset(c, 0, sizeof(*c));
|
||||
c->A = INIT_DATA_A;
|
||||
c->B = INIT_DATA_B;
|
||||
c->C = INIT_DATA_C;
|
||||
c->D = INIT_DATA_D;
|
||||
return 1;
|
||||
}
|
||||
int MD5_Init_SLS(MD5_CTX *c) {
|
||||
memset(c, 0, sizeof(*c));
|
||||
c->A = INIT_DATA_A;
|
||||
c->B = INIT_DATA_B;
|
||||
c->C = INIT_DATA_C;
|
||||
c->D = INIT_DATA_D;
|
||||
return 1;
|
||||
}
|
||||
|
||||
void md5_block_data_order(MD5_CTX * c, const void *data_, size_t num) {
|
||||
const unsigned char *data = data_;
|
||||
register unsigned MD32_REG_T A, B, C, D, l;
|
||||
/* See comment in crypto/sha/sha_local.h for details. */
|
||||
unsigned MD32_REG_T XX0, XX1, XX2, XX3, XX4, XX5, XX6, XX7, XX8, XX9,
|
||||
XX10, XX11, XX12, XX13, XX14, XX15;
|
||||
void md5_block_data_order(MD5_CTX *c, const void *data_, size_t num) {
|
||||
const unsigned char *data = data_;
|
||||
register unsigned MD32_REG_T A, B, C, D, l;
|
||||
/* See comment in crypto/sha/sha_local.h for details. */
|
||||
unsigned MD32_REG_T XX0, XX1, XX2, XX3, XX4, XX5, XX6, XX7, XX8, XX9, XX10,
|
||||
XX11, XX12, XX13, XX14, XX15;
|
||||
#define X(i) XX##i
|
||||
|
||||
A = c->A;
|
||||
B = c->B;
|
||||
C = c->C;
|
||||
D = c->D;
|
||||
A = c->A;
|
||||
B = c->B;
|
||||
C = c->C;
|
||||
D = c->D;
|
||||
|
||||
for (; num--;) {
|
||||
(void)HOST_c2l(data, l);
|
||||
X(0) = l;
|
||||
(void)HOST_c2l(data, l);
|
||||
X(1) = l;
|
||||
/* Round 0 */
|
||||
R0(A, B, C, D, X(0), 7, 0xd76aa478L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(2) = l;
|
||||
R0(D, A, B, C, X(1), 12, 0xe8c7b756L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(3) = l;
|
||||
R0(C, D, A, B, X(2), 17, 0x242070dbL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(4) = l;
|
||||
R0(B, C, D, A, X(3), 22, 0xc1bdceeeL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(5) = l;
|
||||
R0(A, B, C, D, X(4), 7, 0xf57c0fafL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(6) = l;
|
||||
R0(D, A, B, C, X(5), 12, 0x4787c62aL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(7) = l;
|
||||
R0(C, D, A, B, X(6), 17, 0xa8304613L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(8) = l;
|
||||
R0(B, C, D, A, X(7), 22, 0xfd469501L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(9) = l;
|
||||
R0(A, B, C, D, X(8), 7, 0x698098d8L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(10) = l;
|
||||
R0(D, A, B, C, X(9), 12, 0x8b44f7afL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(11) = l;
|
||||
R0(C, D, A, B, X(10), 17, 0xffff5bb1L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(12) = l;
|
||||
R0(B, C, D, A, X(11), 22, 0x895cd7beL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(13) = l;
|
||||
R0(A, B, C, D, X(12), 7, 0x6b901122L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(14) = l;
|
||||
R0(D, A, B, C, X(13), 12, 0xfd987193L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(15) = l;
|
||||
R0(C, D, A, B, X(14), 17, 0xa679438eL);
|
||||
R0(B, C, D, A, X(15), 22, 0x49b40821L);
|
||||
/* Round 1 */
|
||||
R1(A, B, C, D, X(1), 5, 0xf61e2562L);
|
||||
R1(D, A, B, C, X(6), 9, 0xc040b340L);
|
||||
R1(C, D, A, B, X(11), 14, 0x265e5a51L);
|
||||
R1(B, C, D, A, X(0), 20, 0xe9b6c7aaL);
|
||||
R1(A, B, C, D, X(5), 5, 0xd62f105dL);
|
||||
R1(D, A, B, C, X(10), 9, 0x02441453L);
|
||||
R1(C, D, A, B, X(15), 14, 0xd8a1e681L);
|
||||
R1(B, C, D, A, X(4), 20, 0xe7d3fbc8L);
|
||||
R1(A, B, C, D, X(9), 5, 0x21e1cde6L);
|
||||
R1(D, A, B, C, X(14), 9, 0xc33707d6L);
|
||||
R1(C, D, A, B, X(3), 14, 0xf4d50d87L);
|
||||
R1(B, C, D, A, X(8), 20, 0x455a14edL);
|
||||
R1(A, B, C, D, X(13), 5, 0xa9e3e905L);
|
||||
R1(D, A, B, C, X(2), 9, 0xfcefa3f8L);
|
||||
R1(C, D, A, B, X(7), 14, 0x676f02d9L);
|
||||
R1(B, C, D, A, X(12), 20, 0x8d2a4c8aL);
|
||||
/* Round 2 */
|
||||
R2(A, B, C, D, X(5), 4, 0xfffa3942L);
|
||||
R2(D, A, B, C, X(8), 11, 0x8771f681L);
|
||||
R2(C, D, A, B, X(11), 16, 0x6d9d6122L);
|
||||
R2(B, C, D, A, X(14), 23, 0xfde5380cL);
|
||||
R2(A, B, C, D, X(1), 4, 0xa4beea44L);
|
||||
R2(D, A, B, C, X(4), 11, 0x4bdecfa9L);
|
||||
R2(C, D, A, B, X(7), 16, 0xf6bb4b60L);
|
||||
R2(B, C, D, A, X(10), 23, 0xbebfbc70L);
|
||||
R2(A, B, C, D, X(13), 4, 0x289b7ec6L);
|
||||
R2(D, A, B, C, X(0), 11, 0xeaa127faL);
|
||||
R2(C, D, A, B, X(3), 16, 0xd4ef3085L);
|
||||
R2(B, C, D, A, X(6), 23, 0x04881d05L);
|
||||
R2(A, B, C, D, X(9), 4, 0xd9d4d039L);
|
||||
R2(D, A, B, C, X(12), 11, 0xe6db99e5L);
|
||||
R2(C, D, A, B, X(15), 16, 0x1fa27cf8L);
|
||||
R2(B, C, D, A, X(2), 23, 0xc4ac5665L);
|
||||
/* Round 3 */
|
||||
R3(A, B, C, D, X(0), 6, 0xf4292244L);
|
||||
R3(D, A, B, C, X(7), 10, 0x432aff97L);
|
||||
R3(C, D, A, B, X(14), 15, 0xab9423a7L);
|
||||
R3(B, C, D, A, X(5), 21, 0xfc93a039L);
|
||||
R3(A, B, C, D, X(12), 6, 0x655b59c3L);
|
||||
R3(D, A, B, C, X(3), 10, 0x8f0ccc92L);
|
||||
R3(C, D, A, B, X(10), 15, 0xffeff47dL);
|
||||
R3(B, C, D, A, X(1), 21, 0x85845dd1L);
|
||||
R3(A, B, C, D, X(8), 6, 0x6fa87e4fL);
|
||||
R3(D, A, B, C, X(15), 10, 0xfe2ce6e0L);
|
||||
R3(C, D, A, B, X(6), 15, 0xa3014314L);
|
||||
R3(B, C, D, A, X(13), 21, 0x4e0811a1L);
|
||||
R3(A, B, C, D, X(4), 6, 0xf7537e82L);
|
||||
R3(D, A, B, C, X(11), 10, 0xbd3af235L);
|
||||
R3(C, D, A, B, X(2), 15, 0x2ad7d2bbL);
|
||||
R3(B, C, D, A, X(9), 21, 0xeb86d391L);
|
||||
for (; num--;) {
|
||||
(void)HOST_c2l(data, l);
|
||||
X(0) = l;
|
||||
(void)HOST_c2l(data, l);
|
||||
X(1) = l;
|
||||
/* Round 0 */
|
||||
R0(A, B, C, D, X(0), 7, 0xd76aa478L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(2) = l;
|
||||
R0(D, A, B, C, X(1), 12, 0xe8c7b756L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(3) = l;
|
||||
R0(C, D, A, B, X(2), 17, 0x242070dbL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(4) = l;
|
||||
R0(B, C, D, A, X(3), 22, 0xc1bdceeeL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(5) = l;
|
||||
R0(A, B, C, D, X(4), 7, 0xf57c0fafL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(6) = l;
|
||||
R0(D, A, B, C, X(5), 12, 0x4787c62aL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(7) = l;
|
||||
R0(C, D, A, B, X(6), 17, 0xa8304613L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(8) = l;
|
||||
R0(B, C, D, A, X(7), 22, 0xfd469501L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(9) = l;
|
||||
R0(A, B, C, D, X(8), 7, 0x698098d8L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(10) = l;
|
||||
R0(D, A, B, C, X(9), 12, 0x8b44f7afL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(11) = l;
|
||||
R0(C, D, A, B, X(10), 17, 0xffff5bb1L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(12) = l;
|
||||
R0(B, C, D, A, X(11), 22, 0x895cd7beL);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(13) = l;
|
||||
R0(A, B, C, D, X(12), 7, 0x6b901122L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(14) = l;
|
||||
R0(D, A, B, C, X(13), 12, 0xfd987193L);
|
||||
(void)HOST_c2l(data, l);
|
||||
X(15) = l;
|
||||
R0(C, D, A, B, X(14), 17, 0xa679438eL);
|
||||
R0(B, C, D, A, X(15), 22, 0x49b40821L);
|
||||
/* Round 1 */
|
||||
R1(A, B, C, D, X(1), 5, 0xf61e2562L);
|
||||
R1(D, A, B, C, X(6), 9, 0xc040b340L);
|
||||
R1(C, D, A, B, X(11), 14, 0x265e5a51L);
|
||||
R1(B, C, D, A, X(0), 20, 0xe9b6c7aaL);
|
||||
R1(A, B, C, D, X(5), 5, 0xd62f105dL);
|
||||
R1(D, A, B, C, X(10), 9, 0x02441453L);
|
||||
R1(C, D, A, B, X(15), 14, 0xd8a1e681L);
|
||||
R1(B, C, D, A, X(4), 20, 0xe7d3fbc8L);
|
||||
R1(A, B, C, D, X(9), 5, 0x21e1cde6L);
|
||||
R1(D, A, B, C, X(14), 9, 0xc33707d6L);
|
||||
R1(C, D, A, B, X(3), 14, 0xf4d50d87L);
|
||||
R1(B, C, D, A, X(8), 20, 0x455a14edL);
|
||||
R1(A, B, C, D, X(13), 5, 0xa9e3e905L);
|
||||
R1(D, A, B, C, X(2), 9, 0xfcefa3f8L);
|
||||
R1(C, D, A, B, X(7), 14, 0x676f02d9L);
|
||||
R1(B, C, D, A, X(12), 20, 0x8d2a4c8aL);
|
||||
/* Round 2 */
|
||||
R2(A, B, C, D, X(5), 4, 0xfffa3942L);
|
||||
R2(D, A, B, C, X(8), 11, 0x8771f681L);
|
||||
R2(C, D, A, B, X(11), 16, 0x6d9d6122L);
|
||||
R2(B, C, D, A, X(14), 23, 0xfde5380cL);
|
||||
R2(A, B, C, D, X(1), 4, 0xa4beea44L);
|
||||
R2(D, A, B, C, X(4), 11, 0x4bdecfa9L);
|
||||
R2(C, D, A, B, X(7), 16, 0xf6bb4b60L);
|
||||
R2(B, C, D, A, X(10), 23, 0xbebfbc70L);
|
||||
R2(A, B, C, D, X(13), 4, 0x289b7ec6L);
|
||||
R2(D, A, B, C, X(0), 11, 0xeaa127faL);
|
||||
R2(C, D, A, B, X(3), 16, 0xd4ef3085L);
|
||||
R2(B, C, D, A, X(6), 23, 0x04881d05L);
|
||||
R2(A, B, C, D, X(9), 4, 0xd9d4d039L);
|
||||
R2(D, A, B, C, X(12), 11, 0xe6db99e5L);
|
||||
R2(C, D, A, B, X(15), 16, 0x1fa27cf8L);
|
||||
R2(B, C, D, A, X(2), 23, 0xc4ac5665L);
|
||||
/* Round 3 */
|
||||
R3(A, B, C, D, X(0), 6, 0xf4292244L);
|
||||
R3(D, A, B, C, X(7), 10, 0x432aff97L);
|
||||
R3(C, D, A, B, X(14), 15, 0xab9423a7L);
|
||||
R3(B, C, D, A, X(5), 21, 0xfc93a039L);
|
||||
R3(A, B, C, D, X(12), 6, 0x655b59c3L);
|
||||
R3(D, A, B, C, X(3), 10, 0x8f0ccc92L);
|
||||
R3(C, D, A, B, X(10), 15, 0xffeff47dL);
|
||||
R3(B, C, D, A, X(1), 21, 0x85845dd1L);
|
||||
R3(A, B, C, D, X(8), 6, 0x6fa87e4fL);
|
||||
R3(D, A, B, C, X(15), 10, 0xfe2ce6e0L);
|
||||
R3(C, D, A, B, X(6), 15, 0xa3014314L);
|
||||
R3(B, C, D, A, X(13), 21, 0x4e0811a1L);
|
||||
R3(A, B, C, D, X(4), 6, 0xf7537e82L);
|
||||
R3(D, A, B, C, X(11), 10, 0xbd3af235L);
|
||||
R3(C, D, A, B, X(2), 15, 0x2ad7d2bbL);
|
||||
R3(B, C, D, A, X(9), 21, 0xeb86d391L);
|
||||
|
||||
A = c->A += A;
|
||||
B = c->B += B;
|
||||
C = c->C += C;
|
||||
D = c->D += D;
|
||||
}
|
||||
A = c->A += A;
|
||||
B = c->B += B;
|
||||
C = c->C += C;
|
||||
D = c->D += D;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Modification 2021 Paul Scherrer Institut
|
||||
* from md32_common.h
|
||||
*/
|
||||
int HASH_UPDATE(HASH_CTX * c, const void *data_, size_t len) {
|
||||
const unsigned char *data = data_;
|
||||
unsigned char *p;
|
||||
HASH_LONG l;
|
||||
size_t n;
|
||||
/**
|
||||
* Modification 2021 Paul Scherrer Institut
|
||||
* from md32_common.h
|
||||
*/
|
||||
int HASH_UPDATE(HASH_CTX *c, const void *data_, size_t len) {
|
||||
const unsigned char *data = data_;
|
||||
unsigned char *p;
|
||||
HASH_LONG l;
|
||||
size_t n;
|
||||
|
||||
if (len == 0)
|
||||
return 1;
|
||||
if (len == 0)
|
||||
return 1;
|
||||
|
||||
l = (c->Nl + (((HASH_LONG)len) << 3)) & 0xffffffffUL;
|
||||
if (l < c->Nl) /* overflow */
|
||||
c->Nh++;
|
||||
c->Nh += (HASH_LONG)(len >> 29); /* might cause compiler warning on
|
||||
* 16-bit */
|
||||
c->Nl = l;
|
||||
l = (c->Nl + (((HASH_LONG)len) << 3)) & 0xffffffffUL;
|
||||
if (l < c->Nl) /* overflow */
|
||||
c->Nh++;
|
||||
c->Nh += (HASH_LONG)(len >> 29); /* might cause compiler warning on
|
||||
* 16-bit */
|
||||
c->Nl = l;
|
||||
|
||||
n = c->num;
|
||||
if (n != 0) {
|
||||
p = (unsigned char *)c->data;
|
||||
n = c->num;
|
||||
if (n != 0) {
|
||||
p = (unsigned char *)c->data;
|
||||
|
||||
if (len >= HASH_CBLOCK || len + n >= HASH_CBLOCK) {
|
||||
memcpy(p + n, data, HASH_CBLOCK - n);
|
||||
HASH_BLOCK_DATA_ORDER(c, p, 1);
|
||||
n = HASH_CBLOCK - n;
|
||||
data += n;
|
||||
len -= n;
|
||||
c->num = 0;
|
||||
/*
|
||||
* We use memset rather than OPENSSL_cleanse() here
|
||||
* deliberately. Using OPENSSL_cleanse() here could be a
|
||||
* performance issue. It will get properly cleansed on
|
||||
* finalisation so this isn't a security problem.
|
||||
*/
|
||||
memset(p, 0, HASH_CBLOCK); /* keep it zeroed */
|
||||
} else {
|
||||
memcpy(p + n, data, len);
|
||||
c->num += (unsigned int)len;
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
n = len / HASH_CBLOCK;
|
||||
if (n > 0) {
|
||||
HASH_BLOCK_DATA_ORDER(c, data, n);
|
||||
n *= HASH_CBLOCK;
|
||||
if (len >= HASH_CBLOCK || len + n >= HASH_CBLOCK) {
|
||||
memcpy(p + n, data, HASH_CBLOCK - n);
|
||||
HASH_BLOCK_DATA_ORDER(c, p, 1);
|
||||
n = HASH_CBLOCK - n;
|
||||
data += n;
|
||||
len -= n;
|
||||
c->num = 0;
|
||||
/*
|
||||
* We use memset rather than OPENSSL_cleanse() here
|
||||
* deliberately. Using OPENSSL_cleanse() here could be a
|
||||
* performance issue. It will get properly cleansed on
|
||||
* finalisation so this isn't a security problem.
|
||||
*/
|
||||
memset(p, 0, HASH_CBLOCK); /* keep it zeroed */
|
||||
} else {
|
||||
memcpy(p + n, data, len);
|
||||
c->num += (unsigned int)len;
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (len != 0) {
|
||||
p = (unsigned char *)c->data;
|
||||
c->num = (unsigned int)len;
|
||||
memcpy(p, data, len);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/**
|
||||
* Modification 2021 Paul Scherrer Institut
|
||||
* from md32_common.h
|
||||
*/
|
||||
int HASH_FINAL(unsigned char *md, HASH_CTX *c) {
|
||||
unsigned char *p = (unsigned char *)c->data;
|
||||
size_t n = c->num;
|
||||
n = len / HASH_CBLOCK;
|
||||
if (n > 0) {
|
||||
HASH_BLOCK_DATA_ORDER(c, data, n);
|
||||
n *= HASH_CBLOCK;
|
||||
data += n;
|
||||
len -= n;
|
||||
}
|
||||
|
||||
p[n] = 0x80; /* there is always room for one */
|
||||
n++;
|
||||
if (len != 0) {
|
||||
p = (unsigned char *)c->data;
|
||||
c->num = (unsigned int)len;
|
||||
memcpy(p, data, len);
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (n > (HASH_CBLOCK - 8)) {
|
||||
memset(p + n, 0, HASH_CBLOCK - n);
|
||||
n = 0;
|
||||
HASH_BLOCK_DATA_ORDER(c, p, 1);
|
||||
}
|
||||
memset(p + n, 0, HASH_CBLOCK - 8 - n);
|
||||
/**
|
||||
* Modification 2021 Paul Scherrer Institut
|
||||
* from md32_common.h
|
||||
*/
|
||||
int HASH_FINAL(unsigned char *md, HASH_CTX *c) {
|
||||
unsigned char *p = (unsigned char *)c->data;
|
||||
size_t n = c->num;
|
||||
|
||||
p += HASH_CBLOCK - 8;
|
||||
p[n] = 0x80; /* there is always room for one */
|
||||
n++;
|
||||
|
||||
if (n > (HASH_CBLOCK - 8)) {
|
||||
memset(p + n, 0, HASH_CBLOCK - n);
|
||||
n = 0;
|
||||
HASH_BLOCK_DATA_ORDER(c, p, 1);
|
||||
}
|
||||
memset(p + n, 0, HASH_CBLOCK - 8 - n);
|
||||
|
||||
p += HASH_CBLOCK - 8;
|
||||
#if defined(DATA_ORDER_IS_BIG_ENDIAN)
|
||||
(void)HOST_l2c(c->Nh, p);
|
||||
(void)HOST_l2c(c->Nl, p);
|
||||
(void)HOST_l2c(c->Nh, p);
|
||||
(void)HOST_l2c(c->Nl, p);
|
||||
#elif defined(DATA_ORDER_IS_LITTLE_ENDIAN)
|
||||
(void)HOST_l2c(c->Nl, p);
|
||||
(void)HOST_l2c(c->Nh, p);
|
||||
#endif
|
||||
p -= HASH_CBLOCK;
|
||||
HASH_BLOCK_DATA_ORDER(c, p, 1);
|
||||
c->num = 0;
|
||||
// OPENSSL_cleanse(p, HASH_CBLOCK);
|
||||
// Erik: Since we don't do encryption secure cleaning is not needed
|
||||
memset(p, 0, HASH_CBLOCK);
|
||||
p -= HASH_CBLOCK;
|
||||
HASH_BLOCK_DATA_ORDER(c, p, 1);
|
||||
c->num = 0;
|
||||
// OPENSSL_cleanse(p, HASH_CBLOCK);
|
||||
// Erik: Since we don't do encryption secure cleaning is not needed
|
||||
memset(p, 0, HASH_CBLOCK);
|
||||
|
||||
HASH_MAKE_STRING(c, md);
|
||||
HASH_MAKE_STRING(c, md);
|
||||
|
||||
return 1;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
} // namespace sls
|
||||
|
||||
@@ -225,7 +225,7 @@ void validatePortRange(uint16_t startPort, int numPorts) {
|
||||
|
||||
void setupSignalHandler(int signal, void (*handler)(int)) {
|
||||
// Catch signal SIGINT to close files and call destructors properly
|
||||
struct sigaction sa{};
|
||||
struct sigaction sa {};
|
||||
sa.sa_handler = handler;
|
||||
sigemptyset(&sa.sa_mask); // dont block additional signals
|
||||
sa.sa_flags = 0;
|
||||
|
||||
Reference in New Issue
Block a user