15331Samw #!/usr/sbin/dtrace -s 25331Samw /* 35331Samw * CDDL HEADER START 45331Samw * 55331Samw * The contents of this file are subject to the terms of the 65331Samw * Common Development and Distribution License (the "License"). 75331Samw * You may not use this file except in compliance with the License. 85331Samw * 95331Samw * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 105331Samw * or http://www.opensolaris.org/os/licensing. 115331Samw * See the License for the specific language governing permissions 125331Samw * and limitations under the License. 135331Samw * 145331Samw * When distributing Covered Code, include this CDDL HEADER in each 155331Samw * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 165331Samw * If applicable, add the following below this CDDL HEADER, with the 175331Samw * fields enclosed by brackets "[]" replaced with your own identifying 185331Samw * information: Portions Copyright [yyyy] [name of copyright owner] 195331Samw * 205331Samw * CDDL HEADER END 215331Samw */ 2212508Samw@Sun.COM 235331Samw /* 2412508Samw@Sun.COM * Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. 255331Samw */ 265331Samw 275331Samw /* 285331Samw * Usage: ./msrpc.d -p `pgrep smbd` 295331Samw * 305331Samw * On multi-processor systems, it may be easier to follow the output 315331Samw * if run on a single processor: see psradm. For example, to disable 325331Samw * the second processor on a dual-processor system: psradm -f 1 335521Sas200622 * 345521Sas200622 * This script can be used to trace NDR operations and MSRPC requests. 355521Sas200622 * In order to put these operations in context, SMB session and tree 365521Sas200622 * requests are also traced. 375521Sas200622 * 385521Sas200622 * Output formatting is as follows: 395521Sas200622 * 405521Sas200622 * UI 03 ... rpc_vers get 1@0 = 5 {05} 415521Sas200622 * UI 03 ... rpc_vers_minor get 1@1 = 0 {00} 425521Sas200622 * 435521Sas200622 * U Marshalling flag (M=marshal, U=unmarshal) 445521Sas200622 * I Direction flag (I=in, O=out) 455521Sas200622 * ... Field name 465521Sas200622 * get PDU operation (get or put) 475521Sas200622 * 1@0 Bytes @ offset (i.e. 1 byte at offset 0) 485521Sas200622 * {05} Value 495521Sas200622 * 505521Sas200622 * The value formatting is limited to 10 bytes, after which an ellipsis 515521Sas200622 * will be inserted before the closing brace. If the value is 1 or 2 525521Sas200622 * bytes, an attempt will be made to present an ASCII value but this may 535521Sas200622 * or may not be relevent. 545521Sas200622 * 555521Sas200622 * The following example shows the header from a bind response: 565521Sas200622 * 575521Sas200622 * trace:entry MO 03 ... rpc_vers put 1@0 = 5 {05} 585521Sas200622 * trace:entry MO 03 ... rpc_vers_minor put 1@1 = 0 {00} 595521Sas200622 * trace:entry MO 03 ... ptype put 1@2 = 12 {0c} 605521Sas200622 * trace:entry MO 03 ... pfc_flags put 1@3 = 3 {03} 615521Sas200622 * trace:entry MO 04 .... intg_char_rep put 1@4 = 16 {10} 625521Sas200622 * trace:entry MO 04 .... float_rep put 1@5 = 0 {00} 635521Sas200622 * trace:entry MO 04 .... _spare[0] put 1@6 = 0 {00} 645521Sas200622 * trace:entry MO 04 .... _spare[1] put 1@7 = 0 {00} 655521Sas200622 * trace:entry MO 03 ... frag_length put 2@8 = 68 {44 00} D 665521Sas200622 * trace:entry MO 03 ... auth_length put 2@10 = 0 {00 00} 675521Sas200622 * trace:entry MO 03 ... call_id put 4@12 = 1 {01 00 00 00} 685521Sas200622 * trace:entry MO 02 .. max_xmit_frag put 2@16 = 4280 {b8 10} 695521Sas200622 * trace:entry MO 02 .. max_recv_frag put 2@18 = 4280 {b8 10} 705521Sas200622 * trace:entry MO 02 .. assoc_group_id put 4@20 = 1192620711 {a7 f2 15 47} 715521Sas200622 * trace:entry MO 02 .. sec_addr.length put 2@24 = 12 {0c 00} 725521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[0] put 1@26 = 92 {5c} \ 735521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[1] put 1@27 = 80 {50} P 745521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[2] put 1@28 = 73 {49} I 755521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[3] put 1@29 = 80 {50} P 765521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[4] put 1@30 = 69 {45} E 775521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[5] put 1@31 = 92 {5c} \ 785521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[6] put 1@32 = 108 {6c} l 795521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[7] put 1@33 = 115 {73} s 805521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[8] put 1@34 = 97 {61} a 815521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[9] put 1@35 = 115 {73} s 825521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[10] put 1@36 = 115 {73} s 835521Sas200622 * trace:entry MO 02 .. sec_addr.port_spec[11] put 1@37 = 0 {00} 845331Samw */ 855331Samw 865772Sas200622 BEGIN 875772Sas200622 { 885772Sas200622 printf("MSRPC Trace Started"); 895772Sas200622 printf("\n\n"); 905772Sas200622 } 915772Sas200622 925772Sas200622 END 935772Sas200622 { 945772Sas200622 printf("MSRPC Trace Ended"); 955772Sas200622 printf("\n\n"); 965772Sas200622 } 975772Sas200622 985331Samw /* 995331Samw * SmbSessionSetupX, SmbLogoffX 1005331Samw * SmbTreeConnect, SmbTreeDisconnect 1015331Samw */ 1025331Samw smb_tree*:entry, 1035331Samw smb_com_*:entry, 1045331Samw smb_com_*:return, 1055331Samw smb_com_session_setup_andx:entry, 1065331Samw smb_com_logoff_andx:entry, 1075331Samw smb_tree_connect:return, 1085331Samw smb_tree_disconnect:entry, 1095772Sas200622 smb_tree_disconnect:return, 1107052Samw smb_opipe_open:entry, 1117052Samw smb_opipe_door_call:entry, 1127052Samw smb_opipe_door_upcall:entry, 1135772Sas200622 door_ki_upcall:entry 1145331Samw { 1155331Samw } 1165331Samw 1175331Samw smb_com_session_setup_andx:return, 1185331Samw smb_user*:return, 1195772Sas200622 smb_tree*:return, 1207052Samw smb_opipe_open:return, 1217052Samw smb_opipe_door_call:return, 1227052Samw smb_opipe_door_upcall:return, 1235772Sas200622 door_ki_upcall:return 1245331Samw { 1255772Sas200622 printf("rc=0x%08x", arg1); 1265331Samw } 1275331Samw 1285331Samw sdt:smbsrv::smb-sessionsetup-clntinfo 1295331Samw { 13011963SAfshin.Ardakani@Sun.COM user_info = (smb_logon_t *)arg0; 1315331Samw 1328334SJose.Borrego@Sun.COM printf("domain\\username=%s\\%s\n\n", 13311963SAfshin.Ardakani@Sun.COM stringof(user_info->lg_domain), 13411963SAfshin.Ardakani@Sun.COM stringof(user_info->lg_username)); 1355331Samw } 1365331Samw 1375331Samw smb_tree_connect:entry 1385331Samw { 1398334SJose.Borrego@Sun.COM sr = (smb_request_t *)arg0; 1408334SJose.Borrego@Sun.COM 1415331Samw printf("share=%s service=%s", 1428334SJose.Borrego@Sun.COM stringof(sr->arg.tcon.path), 1438334SJose.Borrego@Sun.COM stringof(sr->arg.tcon.service)); 1445331Samw } 1455331Samw 1465331Samw smb_com_logoff_andx:return 1475331Samw { 1485331Samw } 1495331Samw 1505331Samw /* 1515331Samw * Raise error functions (no return). 1525331Samw */ 15312508Samw@Sun.COM smbsr_status:entry 1545331Samw { 1555331Samw printf("status=0x%08x class=%d, code=%d", arg1, arg2, arg3); 1565331Samw } 1575331Samw 1585772Sas200622 smbsr_errno:entry 1595331Samw { 1605331Samw printf("errno=%d", arg1); 1615331Samw } 1625331Samw 16312508Samw@Sun.COM smbsr_status:return, 1647348SJose.Borrego@Sun.COM smbsr_errno:return 1657348SJose.Borrego@Sun.COM { 1667348SJose.Borrego@Sun.COM } 1677348SJose.Borrego@Sun.COM 1685331Samw /* 1695331Samw * MSRPC activity. 1705331Samw */ 1718334SJose.Borrego@Sun.COM pid$target::ndr_svc_bind:entry, 1728334SJose.Borrego@Sun.COM pid$target::ndr_svc_bind:return, 1738334SJose.Borrego@Sun.COM pid$target::ndr_svc_request:entry, 1748334SJose.Borrego@Sun.COM pid$target::ndr_svc_request:return 1755331Samw { 1765331Samw } 1775331Samw 1785331Samw pid$target::smb_trace:entry, 1798334SJose.Borrego@Sun.COM pid$target::ndo_trace:entry 1805331Samw { 1815331Samw printf("%s", copyinstr(arg0)); 1825331Samw } 1835331Samw 1845331Samw /* 1855331Samw * LSARPC 1865331Samw */ 1875331Samw pid$target::lsarpc_s_CloseHandle:entry, 1885331Samw pid$target::lsarpc_s_QuerySecurityObject:entry, 1895331Samw pid$target::lsarpc_s_EnumAccounts:entry, 1905331Samw pid$target::lsarpc_s_EnumTrustedDomain:entry, 1915331Samw pid$target::lsarpc_s_OpenAccount:entry, 1925331Samw pid$target::lsarpc_s_EnumPrivsAccount:entry, 1935331Samw pid$target::lsarpc_s_LookupPrivValue:entry, 1945331Samw pid$target::lsarpc_s_LookupPrivName:entry, 1955331Samw pid$target::lsarpc_s_LookupPrivDisplayName:entry, 1965331Samw pid$target::lsarpc_s_QueryInfoPolicy:entry, 1975331Samw pid$target::lsarpc_s_OpenDomainHandle:entry, 1985331Samw pid$target::lsarpc_s_OpenDomainHandle:entry, 1995331Samw pid$target::lsarpc_s_LookupSids:entry, 2005331Samw pid$target::lsarpc_s_LookupNames:entry, 2015331Samw pid$target::lsarpc_s_GetConnectedUser:entry, 2025331Samw pid$target::lsarpc_s_LookupSids2:entry, 2035331Samw pid$target::lsarpc_s_LookupNames2:entry 2045331Samw { 2055331Samw } 2065331Samw 2075331Samw pid$target::lsarpc_s_CloseHandle:return, 2085331Samw pid$target::lsarpc_s_QuerySecurityObject:return, 2095331Samw pid$target::lsarpc_s_EnumAccounts:return, 2105331Samw pid$target::lsarpc_s_EnumTrustedDomain:return, 2115331Samw pid$target::lsarpc_s_OpenAccount:return, 2125331Samw pid$target::lsarpc_s_EnumPrivsAccount:return, 2135331Samw pid$target::lsarpc_s_LookupPrivValue:return, 2145331Samw pid$target::lsarpc_s_LookupPrivName:return, 2155331Samw pid$target::lsarpc_s_LookupPrivDisplayName:return, 2165331Samw pid$target::lsarpc_s_QueryInfoPolicy:return, 2175331Samw pid$target::lsarpc_s_OpenDomainHandle:return, 2185331Samw pid$target::lsarpc_s_OpenDomainHandle:return, 2195331Samw pid$target::lsarpc_s_LookupSids:return, 2205331Samw pid$target::lsarpc_s_LookupNames:return, 2215331Samw pid$target::lsarpc_s_GetConnectedUser:return, 2225331Samw pid$target::lsarpc_s_LookupSids2:return, 2235331Samw pid$target::lsarpc_s_LookupNames2:return 2245331Samw { 2255331Samw } 2265331Samw 22711337SWilliam.Krier@Sun.COM pid$target::lsar_lookup_names:entry 22811337SWilliam.Krier@Sun.COM { 22911337SWilliam.Krier@Sun.COM printf("%s", copyinstr(arg1)); 23011337SWilliam.Krier@Sun.COM } 23111337SWilliam.Krier@Sun.COM 23211337SWilliam.Krier@Sun.COM pid$target::lsar_lookup_*:entry 23311337SWilliam.Krier@Sun.COM { 23411337SWilliam.Krier@Sun.COM } 23511337SWilliam.Krier@Sun.COM 23611337SWilliam.Krier@Sun.COM pid$target::lsar_lookup_*:return 23711337SWilliam.Krier@Sun.COM { 23811337SWilliam.Krier@Sun.COM printf("0x%08x", arg1); 23911337SWilliam.Krier@Sun.COM } 24011337SWilliam.Krier@Sun.COM 24111447Samw@Sun.COM pid$target::lsar_*:entry 24211447Samw@Sun.COM { 24311447Samw@Sun.COM } 24411447Samw@Sun.COM 24511447Samw@Sun.COM pid$target::lsar_*:return 24611447Samw@Sun.COM { 24711447Samw@Sun.COM printf("0x%08x", arg1); 24811447Samw@Sun.COM } 24911447Samw@Sun.COM 2505331Samw /* 2515331Samw * NetLogon 2525331Samw */ 25310475Samw@Sun.COM pid$target::netr_*:entry 2545331Samw { 2555331Samw } 2565331Samw 25710475Samw@Sun.COM pid$target::netr_*:return 25810475Samw@Sun.COM { 25910475Samw@Sun.COM printf("0x%08x", arg1); 26010475Samw@Sun.COM } 26110475Samw@Sun.COM 2625331Samw /* 2635331Samw * SAMR 2645331Samw */ 26512890SJoyce.McIntosh@Sun.COM pid$target::samr_s_Connect:entry, 2665331Samw pid$target::samr_s_CloseHandle:entry, 2675331Samw pid$target::samr_s_LookupDomain:entry, 2685331Samw pid$target::samr_s_EnumLocalDomains:entry, 2695331Samw pid$target::samr_s_OpenDomain:entry, 2705331Samw pid$target::samr_s_QueryDomainInfo:entry, 27111447Samw@Sun.COM pid$target::samr_s_QueryInfoDomain2:entry, 2725331Samw pid$target::samr_s_LookupNames:entry, 2735331Samw pid$target::samr_s_OpenUser:entry, 2745331Samw pid$target::samr_s_DeleteUser:entry, 2755331Samw pid$target::samr_s_QueryUserInfo:entry, 2765331Samw pid$target::samr_s_QueryUserGroups:entry, 2775331Samw pid$target::samr_s_OpenGroup:entry, 27812890SJoyce.McIntosh@Sun.COM pid$target::samr_s_Connect2:entry, 2795331Samw pid$target::samr_s_GetUserPwInfo:entry, 2805331Samw pid$target::samr_s_CreateUser:entry, 2815331Samw pid$target::samr_s_ChangeUserPasswd:entry, 2825331Samw pid$target::samr_s_GetDomainPwInfo:entry, 2835331Samw pid$target::samr_s_SetUserInfo:entry, 2845331Samw pid$target::samr_s_Connect4:entry, 28512890SJoyce.McIntosh@Sun.COM pid$target::samr_s_Connect5:entry, 2865331Samw pid$target::samr_s_QueryDispInfo:entry, 2875331Samw pid$target::samr_s_OpenAlias:entry, 2885331Samw pid$target::samr_s_CreateDomainAlias:entry, 2895331Samw pid$target::samr_s_SetAliasInfo:entry, 2905331Samw pid$target::samr_s_QueryAliasInfo:entry, 2915331Samw pid$target::samr_s_DeleteDomainAlias:entry, 2925331Samw pid$target::samr_s_EnumDomainAliases:entry, 2935331Samw pid$target::samr_s_EnumDomainGroups:entry 2945331Samw { 2955331Samw } 2965331Samw 29712890SJoyce.McIntosh@Sun.COM pid$target::samr_s_Connect:return, 2985331Samw pid$target::samr_s_CloseHandle:return, 2995331Samw pid$target::samr_s_LookupDomain:return, 3005331Samw pid$target::samr_s_EnumLocalDomains:return, 3015331Samw pid$target::samr_s_OpenDomain:return, 3025331Samw pid$target::samr_s_QueryDomainInfo:return, 30311447Samw@Sun.COM pid$target::samr_s_QueryInfoDomain2:return, 3045331Samw pid$target::samr_s_LookupNames:return, 3055331Samw pid$target::samr_s_OpenUser:return, 3065331Samw pid$target::samr_s_DeleteUser:return, 3075331Samw pid$target::samr_s_QueryUserInfo:return, 3085331Samw pid$target::samr_s_QueryUserGroups:return, 3095331Samw pid$target::samr_s_OpenGroup:return, 31012890SJoyce.McIntosh@Sun.COM pid$target::samr_s_Connect2:return, 3115331Samw pid$target::samr_s_GetUserPwInfo:return, 3125331Samw pid$target::samr_s_CreateUser:return, 3135331Samw pid$target::samr_s_ChangeUserPasswd:return, 3145331Samw pid$target::samr_s_GetDomainPwInfo:return, 3155331Samw pid$target::samr_s_SetUserInfo:return, 3165331Samw pid$target::samr_s_Connect4:return, 31712890SJoyce.McIntosh@Sun.COM pid$target::samr_s_Connect5:return, 3185331Samw pid$target::samr_s_QueryDispInfo:return, 3195331Samw pid$target::samr_s_OpenAlias:return, 3205331Samw pid$target::samr_s_CreateDomainAlias:return, 3215331Samw pid$target::samr_s_SetAliasInfo:return, 3225331Samw pid$target::samr_s_QueryAliasInfo:return, 3235331Samw pid$target::samr_s_DeleteDomainAlias:return, 3245331Samw pid$target::samr_s_EnumDomainAliases:return, 3255331Samw pid$target::samr_s_EnumDomainGroups:return 3265331Samw { 3275331Samw } 3285331Samw 3295331Samw /* 330*13082SJoyce.McIntosh@Sun.COM * SPOOLSS 331*13082SJoyce.McIntosh@Sun.COM */ 332*13082SJoyce.McIntosh@Sun.COM pid$target::spoolss_*:entry, 333*13082SJoyce.McIntosh@Sun.COM pid$target::spoolss_*:return 334*13082SJoyce.McIntosh@Sun.COM { 335*13082SJoyce.McIntosh@Sun.COM } 336*13082SJoyce.McIntosh@Sun.COM 337*13082SJoyce.McIntosh@Sun.COM /* 3385331Samw * SVCCTL 3395331Samw */ 3405331Samw pid$target::svcctl_s_*:entry, 3415331Samw pid$target::svcctl_s_*:return 3425331Samw { 3435331Samw } 3445331Samw 3455331Samw /* 3465331Samw * SRVSVC 3475331Samw */ 3485331Samw pid$target::srvsvc_s_NetConnectEnum:entry, 3495331Samw pid$target::srvsvc_s_NetFileEnum:entry, 3505331Samw pid$target::srvsvc_s_NetFileClose:entry, 3515331Samw pid$target::srvsvc_s_NetShareGetInfo:entry, 3525331Samw pid$target::srvsvc_s_NetShareSetInfo:entry, 3535331Samw pid$target::srvsvc_s_NetSessionEnum:entry, 3545331Samw pid$target::srvsvc_s_NetSessionDel:entry, 3555331Samw pid$target::srvsvc_s_NetServerGetInfo:entry, 3565331Samw pid$target::srvsvc_s_NetRemoteTOD:entry, 3575331Samw pid$target::srvsvc_s_NetNameValidate:entry, 3585331Samw pid$target::srvsvc_s_NetShareAdd:entry, 3595331Samw pid$target::srvsvc_s_NetShareDel:entry, 3605331Samw pid$target::srvsvc_s_NetShareEnum:entry, 3615331Samw pid$target::srvsvc_s_NetShareEnumSticky:entry, 3625331Samw pid$target::srvsvc_s_NetGetFileSecurity:entry, 3635331Samw pid$target::srvsvc_s_NetSetFileSecurity:entry 3645331Samw { 3655331Samw } 3665331Samw 3675331Samw pid$target::srvsvc_s_NetConnectEnum:return, 3685331Samw pid$target::srvsvc_s_NetFileEnum:return, 3695331Samw pid$target::srvsvc_s_NetFileClose:return, 3705331Samw pid$target::srvsvc_s_NetShareGetInfo:return, 3715331Samw pid$target::srvsvc_s_NetShareSetInfo:return, 3725331Samw pid$target::srvsvc_s_NetSessionEnum:return, 3735331Samw pid$target::srvsvc_s_NetSessionDel:return, 3745331Samw pid$target::srvsvc_s_NetServerGetInfo:return, 3755331Samw pid$target::srvsvc_s_NetRemoteTOD:return, 3765331Samw pid$target::srvsvc_s_NetNameValidate:return, 3775331Samw pid$target::srvsvc_s_NetShareAdd:return, 3785331Samw pid$target::srvsvc_s_NetShareDel:return, 3795331Samw pid$target::srvsvc_s_NetShareEnum:return, 3805331Samw pid$target::srvsvc_s_NetShareEnumSticky:return, 3815331Samw pid$target::srvsvc_s_NetGetFileSecurity:return, 3825331Samw pid$target::srvsvc_s_NetSetFileSecurity:return 3835331Samw { 3845331Samw } 3855331Samw 3865331Samw /* 3875331Samw * WinReg 3885331Samw */ 3895331Samw pid$target::winreg_s_*:entry, 3905331Samw pid$target::winreg_s_*:return 3915331Samw { 3925331Samw } 3935331Samw 3945331Samw /* 3955331Samw * Workstation 3965331Samw */ 3975331Samw pid$target::wkssvc_s_*:entry, 3985331Samw pid$target::wkssvc_s_*:return 3995331Samw { 4005331Samw } 4015521Sas200622 4025521Sas200622 /* 4035521Sas200622 * SMBRDR 4045521Sas200622 */ 4055772Sas200622 pid$target::smbrdr_tree_connect:entry 4065521Sas200622 { 4075521Sas200622 printf("%s %s %s", 4085521Sas200622 copyinstr(arg0), 4095521Sas200622 copyinstr(arg1), 4105521Sas200622 copyinstr(arg2)); 4115521Sas200622 } 4125521Sas200622 4138334SJose.Borrego@Sun.COM pid$target::smbrdr_open_pipe:entry 4145521Sas200622 { 4155521Sas200622 printf("%s %s %s %s", 4165521Sas200622 copyinstr(arg0), 4175521Sas200622 copyinstr(arg1), 4185521Sas200622 copyinstr(arg2), 4195521Sas200622 copyinstr(arg3)); 4205521Sas200622 } 4215521Sas200622 42210475Samw@Sun.COM pid$target::smbrdr_tree_disconnect:entry, 42310475Samw@Sun.COM pid$target::smbrdr_close_pipe:entry, 42410475Samw@Sun.COM pid$target::smbrdr_ntcreatex:entry, 42510475Samw@Sun.COM pid$target::smbrdr_transact:entry, 42610475Samw@Sun.COM pid$target::smbrdr_readx*:entry 4275521Sas200622 { 4285521Sas200622 } 4295521Sas200622 4305772Sas200622 pid$target::smbrdr_tree_connect:return, 43110475Samw@Sun.COM pid$target::smbrdr_tree_disconnect:return, 4328334SJose.Borrego@Sun.COM pid$target::smbrdr_open_pipe:return, 43310475Samw@Sun.COM pid$target::smbrdr_close_pipe:return, 43410475Samw@Sun.COM pid$target::smbrdr_ntcreatex:return, 43510475Samw@Sun.COM pid$target::smbrdr_transact:return, 43610475Samw@Sun.COM pid$target::smbrdr_readx*:return 4375521Sas200622 { 4385521Sas200622 printf("%d", arg1); 4395521Sas200622 } 44010475Samw@Sun.COM 44110475Samw@Sun.COM pid$target::ndr_clnt_get_frags:entry, 44210475Samw@Sun.COM pid$target::ndr_clnt_get_frag:entry 44310475Samw@Sun.COM { 44410475Samw@Sun.COM } 44510475Samw@Sun.COM 44610475Samw@Sun.COM pid$target::ndr_clnt_get_frags:return, 44710475Samw@Sun.COM pid$target::ndr_clnt_get_frag:return 44810475Samw@Sun.COM { 44910475Samw@Sun.COM printf("%d", arg1); 45010475Samw@Sun.COM } 451