OSI/MHS Management Programming Manual
Examples
OSI/MHS Management Programming Manual—424824-001
C-49
Example in C
 *passw_valid = (*passw_valid &&
 STRNEQUAL (mspwtabl_row.password, password.zstring) &&
 STRNEQUAL (mspwtabl_row.pselector,
 osi_address.zpselector.zstring) &&
 STRNEQUAL (mspwtabl_row.sselector,
 osi_address.zsselector.zstring) &&
 STRNEQUAL (mspwtabl_row.tselector,
 osi_address.ztselector.zstring) &&
 STRNEQUAL (mspwtabl_row.nsap,
 osi_address.znsap.zstring));
 return (sql_error);
} /* validate_bind_password */
/***************************************************************************/
/* Function: add_mspwtabl_row */
/* Usage : error = add_mspwtabl_row (appl_name, */
/* passw, */
/* appl_orname, */
/* ua_osi_address) */
/* Parameters: appl_name INPUT */
/* passw INPUT */
/* appl_orname INPUT */
/* ua_osi_address INPUT */
/*-------------------------------------------------------------------------*/
/* Add a row to the MSPWTABL table in response to an ADD APPL request. */
/* Return the SQL error number for any error that is encountered, else */
/* return zero. */
/* If the OSI address is not present, Set the zlength fields in */
/* ua_osi_address to -1. */
/***************************************************************************/
int add_mspwtabl_row (zmhs_ddl_appl_name_def *appl_name,
 zmhs_ddl_passw_def *passw,
 zmhs_ddl_appl_orname_def *appl_orname,
 zmhs_ddl_ua_osi_address_def *ua_osi_address)
{
 int sql_error;
 memset (&mspwtabl_row, BLANKS, sizeof (mspwtabl_row));
 memcpy (mspwtabl_row.appl_name, appl_name, sizeof 
(zmhs_ddl_appl_name_def));
 if (passw->zlength > 0)
 memcpy (mspwtabl_row.password, passw->zstring, passw->zlength);
 if (appl_orname->zisocountry.zlength > 0)
 memcpy (mspwtabl_row.iso_country, appl_orname->zisocountry.zstring,
 appl_orname->zisocountry.zlength);
 if (appl_orname->zadmd_name.zlength > 0)
 memcpy (mspwtabl_row.admd, appl_orname->zadmd_name.zstring,
 appl_orname->zadmd_name.zlength);
 if (appl_orname->zprmd_name.zlength > 0)
 memcpy (mspwtabl_row.prmd, appl_orname->zprmd_name.zstring,
 appl_orname->zprmd_name.zlength);
 if (appl_orname->zx121address.zlength > 0)
 memcpy (mspwtabl_row.x121_address, appl_orname->zx121address.zstring,
 appl_orname->zx121address.zlength);
 if (appl_orname->zterminalid.zlength > 0)
 memcpy (mspwtabl_row.terminal_id, appl_orname->zterminalid.zstring,
 appl_orname->zterminalid.zlength);
 if (appl_orname->znumericuseridentifier.zlength > 0)
 memcpy (mspwtabl_row.numeric_user_id,
 appl_orname->znumericuseridentifier.zstring,
 appl_orname->znumericuseridentifier.zlength);










