MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / userInfoToSpb

Function userInfoToSpb

src/common/call_service.cpp:283–328  ·  view source on GitHub ↗

userInfoToSpb @brief Writes data from UserData to spb. @param spb @param userData **/

Source from the content-addressed store, hash-verified

281
282 **/
283static void userInfoToSpb(char*& spb, Auth::UserData& userData)
284{
285 stuffSpb2(spb, isc_spb_sec_username, userData.user.get());
286 if (userData.u.entered())
287 {
288 stuffSpbByte(spb, isc_spb_sec_userid);
289 stuffSpbLong(spb, userData.u.get());
290 }
291 if (userData.g.entered())
292 {
293 stuffSpbByte(spb, isc_spb_sec_groupid);
294 stuffSpbLong(spb, userData.g.get());
295 }
296 if (userData.role.entered()) {
297 stuffSpb2(spb, isc_spb_sql_role_name, userData.role.get());
298 }
299 if (userData.group.entered()) {
300 stuffSpb2(spb, isc_spb_sec_groupname, userData.group.get());
301 }
302 if (userData.pass.entered()) {
303 stuffSpb2(spb, isc_spb_sec_password, userData.pass.get());
304 }
305 if (userData.first.entered()) {
306 stuffSpb2(spb, isc_spb_sec_firstname, userData.first.get());
307 }
308 else if (userData.first.specified()) {
309 stuffSpb2(spb, isc_spb_sec_firstname, "");
310 }
311 if (userData.middle.entered()) {
312 stuffSpb2(spb, isc_spb_sec_middlename, userData.middle.get());
313 }
314 else if (userData.middle.specified()) {
315 stuffSpb2(spb, isc_spb_sec_middlename, "");
316 }
317 if (userData.last.entered()) {
318 stuffSpb2(spb, isc_spb_sec_lastname, userData.last.get());
319 }
320 else if (userData.last.specified()) {
321 stuffSpb2(spb, isc_spb_sec_lastname, "");
322 }
323 if (userData.adm.entered())
324 {
325 stuffSpbByte(spb, isc_spb_sec_admin);
326 stuffSpbLong(spb, userData.adm.get());
327 }
328}
329
330
331static void setAttr(string& a, const char* nm, Firebird::IIntUserField* f)

Callers 1

callRemoteServiceManagerFunction · 0.85

Calls 6

stuffSpb2Function · 0.85
stuffSpbByteFunction · 0.85
stuffSpbLongFunction · 0.85
getMethod · 0.45
enteredMethod · 0.45
specifiedMethod · 0.45

Tested by

no test coverage detected